{"mappings":";AAAA,OAAOA,MAAU,aACjB,OAAOC,MAAY,eAEnB,IAAMC,EAAO,OAAO,OAAO,KAAK,MAAM,2q1BAAkx7B,CAAC,EAElz7BC,EAAQ,CACf,GAAGH,EACH,GAAGC,EACHC,CACA","names":["html","csharp","lang","razor_default"],"sources":["../esm/npm/@shikijs/langs@4.4.3/node_modules/@shikijs/langs/dist/razor.mjs"],"sourcesContent":["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\\\":{\\\"source.cs\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline-template\\\"}]},\\\"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\\\":\\\"(?\u003c=])|$\\\",\\\"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\\\":\\\"(?:^|(?\u003c=}))\\\\\\\\s*(catch)\\\\\\\\b\\\\\\\\s*?(?=[\\\\\\\\n({])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.try.catch.cs\\\"}},\\\"end\\\":\\\"(?\u003c=})|(?\u003c=;)|(?=^\\\\\\\\s*})\\\",\\\"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\\\":\\\"(?\u003ctype-name\u003e(?:(?:(?\u003cidentifier\u003e@?[_[:alpha:]][_[:alnum:]]*)\\\\\\\\s*::\\\\\\\\s*)?(?\u003cname-and-type-args\u003e\\\\\\\\g\u003cidentifier\u003e\\\\\\\\s*(?\u003ctype-args\u003e\\\\\\\\s*\u003c(?:[^\u003c\u003e]|\\\\\\\\g\u003ctype-args\u003e)+\u003e\\\\\\\\s*)?)(?:\\\\\\\\s*\\\\\\\\.\\\\\\\\s*\\\\\\\\g\u003cname-and-type-args\u003e)*|(?\u003ctuple\u003e\\\\\\\\s*\\\\\\\\((?:[^()]|\\\\\\\\g\u003ctuple\u003e)+\\\\\\\\)))(?:\\\\\\\\s*\\\\\\\\?\\\\\\\\s*)?(?:\\\\\\\\s*\\\\\\\\[(?:\\\\\\\\s*,\\\\\\\\s*)*]\\\\\\\\s*)*)\\\\\\\\s*(?:(\\\\\\\\g\u003cidentifier\u003e)\\\\\\\\b)?\\\"}]},\\\"code-directive\\\":{\\\"begin\\\":\\\"(@)(code)((?=\\\\\\\\{)|\\\\\\\\s+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.code\\\"}},\\\"end\\\":\\\"(?\u003c=})|\\\\\\\\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\\\":\\\"(?\u003c=})|(?\u003c=;)|(?=^\\\\\\\\s*})\\\",\\\"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\\\":\\\"(?\u003c=})|(?\u003c=;)|(?=^\\\\\\\\s*})\\\",\\\"name\\\":\\\"meta.statement.do.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#csharp-condition\\\"},{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"else-part\\\":{\\\"begin\\\":\\\"(?:^|(?\u003c=}))\\\\\\\\s*(else)\\\\\\\\b\\\\\\\\s*?(?: (if))?\\\\\\\\s*?(?=[\\\\\\\\n({])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.else.cs\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.conditional.if.cs\\\"}},\\\"end\\\":\\\"(?\u003c=})|(?\u003c=;)|(?=^\\\\\\\\s*})\\\",\\\"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\\\":\\\"(?:^|(?\u003c=}))\\\\\\\\s*(finally)\\\\\\\\b\\\\\\\\s*?(?=[\\\\\\\\n{])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.try.finally.cs\\\"}},\\\"end\\\":\\\"(?\u003c=})|(?\u003c=;)|(?=^\\\\\\\\s*})\\\",\\\"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\\\":\\\"(?\u003c=})|(?\u003c=;)|(?=^\\\\\\\\s*})\\\",\\\"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\\\":\\\"(?\u003c=})|(?\u003c=;)|(?=^\\\\\\\\s*})\\\",\\\"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\\\":\\\"(?:\\\\\\\\b(var)\\\\\\\\b|(?\u003ctype-name\u003e(?:(?:(?\u003cidentifier\u003e@?[_[:alpha:]][_[:alnum:]]*)\\\\\\\\s*::\\\\\\\\s*)?(?\u003cname-and-type-args\u003e\\\\\\\\g\u003cidentifier\u003e\\\\\\\\s*(?\u003ctype-args\u003e\\\\\\\\s*\u003c(?:[^\u003c\u003e]|\\\\\\\\g\u003ctype-args\u003e)+\u003e\\\\\\\\s*)?)(?:\\\\\\\\s*\\\\\\\\.\\\\\\\\s*\\\\\\\\g\u003cname-and-type-args\u003e)*|(?\u003ctuple\u003e\\\\\\\\s*\\\\\\\\((?:[^()]|\\\\\\\\g\u003ctuple\u003e)+\\\\\\\\)))(?:\\\\\\\\s*\\\\\\\\?\\\\\\\\s*)?(?:\\\\\\\\s*\\\\\\\\[(?:\\\\\\\\s*,\\\\\\\\s*)*]\\\\\\\\s*)*))\\\\\\\\s+(\\\\\\\\g\u003cidentifier\u003e)\\\\\\\\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*)?(?\u003ctuple\u003e\\\\\\\\((?:[^()]|\\\\\\\\g\u003ctuple\u003e)+\\\\\\\\))\\\\\\\\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\\\":\\\"(?\u003c=})|(?\u003c=;)|(?=^\\\\\\\\s*})\\\",\\\"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\\\":\\\"(?\u003c=})|(?\u003c=;)|(?=^\\\\\\\\s*})\\\",\\\"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\\\":\\\"(?\u003c=})|\\\\\\\\s\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#directive-codeblock\\\"}]},\\\"if-statement\\\":{\\\"begin\\\":\\\"(@)(if)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.conditional.if.cs\\\"}},\\\"end\\\":\\\"(?\u003c=})|(?\u003c=;)|(?=^\\\\\\\\s*})\\\",\\\"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\\\":\\\"(?\u003c=})|(?\u003c=;)|(?=^\\\\\\\\s*})\\\",\\\"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\\\":\\\"(?\u003c![[:alpha:][:alnum:]])(@)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]}},\\\"contentName\\\":\\\"source.cs\\\",\\\"end\\\":\\\"(?=[]\\\\\\\"')\u003c\u003e{}\\\\\\\\s])\\\",\\\"name\\\":\\\"meta.expression.implicit.cshtml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#await-prefix\\\"},{\\\"include\\\":\\\"#implicit-expression-body\\\"}]},\\\"implicit-expression-accessor\\\":{\\\"match\\\":\\\"(?\u003c=\\\\\\\\.)[_[:alpha:]][_[:alnum:]]*\\\",\\\"name\\\":\\\"variable.other.object.property.cs\\\"},\\\"implicit-expression-accessor-start\\\":{\\\"begin\\\":\\\"([_[:alpha:]][_[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.object.cs\\\"}},\\\"end\\\":\\\"(?=[]\\\\\\\"')\u003c\u003e{}\\\\\\\\s])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#implicit-expression-continuation\\\"}]},\\\"implicit-expression-body\\\":{\\\"end\\\":\\\"(?=[]\\\\\\\"')\u003c\u003e{}\\\\\\\\s])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#implicit-expression-invocation-start\\\"},{\\\"include\\\":\\\"#implicit-expression-accessor-start\\\"}]},\\\"implicit-expression-continuation\\\":{\\\"end\\\":\\\"(?=[]\\\\\\\"')\u003c\u003e{}\\\\\\\\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\\\":\\\"(?\u003c=\\\\\\\\.)[_[:alpha:]][_[:alnum:]]*(?=\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.cs\\\"},\\\"implicit-expression-invocation-start\\\":{\\\"begin\\\":\\\"([_[:alpha:]][_[:alnum:]]*)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.cs\\\"}},\\\"end\\\":\\\"(?=[]\\\\\\\"')\u003c\u003e{}\\\\\\\\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\\\"},\\\"inline-template\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline-template-void-tag\\\"},{\\\"include\\\":\\\"#inline-template-non-void-tag\\\"}]},\\\"inline-template-non-void-tag\\\":{\\\"begin\\\":\\\"(@)(\u003c)(!)?([^/\u003e\\\\\\\\s]+)(?=\\\\\\\\s|/?\u003e)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.razor.tagHelperOptOut\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"(\u003c/)(\\\\\\\\4)\\\\\\\\s*(\u003e)|(/\u003e)\\\",\\\"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\\\":\\\"(?\u003c=\u003e)(?!$)\\\",\\\"end\\\":\\\"(?=\u003c/)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline-template\\\"},{\\\"include\\\":\\\"#wellformed-html\\\"},{\\\"include\\\":\\\"#razor-control-structures\\\"}]},{\\\"include\\\":\\\"#razor-control-structures\\\"},{\\\"include\\\":\\\"text.html.basic#attribute\\\"}]},\\\"inline-template-void-tag\\\":{\\\"begin\\\":\\\"(?i)(@)(\u003c)(!)?(area|base|br|col|command|embed|hr|img|input|keygen|link|meta|param|source|track|wbr)(?=\\\\\\\\s|/?\u003e)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.razor.tagHelperOptOut\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"/?\u003e\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.structure.$4.void.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#razor-control-structures\\\"},{\\\"include\\\":\\\"text.html.basic#attribute\\\"}]},\\\"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\\\":\\\"(?\u003c=})|(?\u003c=;)|(?=^\\\\\\\\s*})\\\",\\\"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\\\":\\\"(?\u003c=})|(?\u003c=;)|(?=^\\\\\\\\s*})\\\",\\\"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\\\":\\\"(?=\u003c(!)?([^/\u003e\\\\\\\\s]+)(\\\\\\\\s|/?\u003e))\\\",\\\"end\\\":\\\"(\u003c/)(\\\\\\\\2)\\\\\\\\s*(\u003e)|(/\u003e)\\\",\\\"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\\\":\\\"(\u003c)(!)?([^/\u003e\\\\\\\\s]+)(?=\\\\\\\\s|/?\u003e)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.escape.razor.tagHelperOptOut\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"(?=/?\u003e)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#razor-control-structures\\\"},{\\\"include\\\":\\\"text.html.basic#attribute\\\"}]},{\\\"begin\\\":\\\"\u003e\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"(?=\u003c/)\\\",\\\"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\\\":\\\"#inline-template\\\"},{\\\"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\\\":\\\"(?\u003c=})\\\",\\\"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\\\":\\\"(?\u003c=})|(?\u003c=;)|(?=^\\\\\\\\s*})\\\",\\\"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\\\":\\\"(?\u003c=})|(?\u003c=;)|(?=^\\\\\\\\s*})\\\",\\\"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\\\":\\\"(\u003ctext\\\\\\\\s*\u003e)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.cshtml.transition.textTag.open\\\"}},\\\"end\\\":\\\"(\u003c/text\u003e)\\\",\\\"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\\\":\\\"(?\u003c=})|(?\u003c=;)|(?=^\\\\\\\\s*})\\\",\\\"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\\\":\\\"(?\u003c=})|(?\u003c=;)|(?=^\\\\\\\\s*})\\\",\\\"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\\\":\\\"(?\u003c=})|(?\u003c=;)|(?=^\\\\\\\\s*})\\\",\\\"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\\\":\\\"(?\u003c=})|(?\u003c=;)|(?=^\\\\\\\\s*})\\\",\\\"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)(\u003c)(!)?(area|base|br|col|command|embed|hr|img|input|keygen|link|meta|param|source|track|wbr)(?=\\\\\\\\s|/?\u003e)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.escape.razor.tagHelperOptOut\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"/?\u003e\\\",\\\"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*|(?\u003c=})\\\\\\\\s*)(while)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.loop.while.cs\\\"}},\\\"end\\\":\\\"(?\u003c=})|(;)\\\",\\\"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"],"version":3}
