mirror of
https://github.com/pengzhanbo/vuepress-theme-plume.git
synced 2026-04-23 10:58:13 +08:00
13 lines
259 KiB
JavaScript
13 lines
259 KiB
JavaScript
import{n as e}from"./chunk-DseTPa7n.js";import{M as t,P as n,X as r,et as i,f as a,ft as o,j as s,l as c,lt as l,y as u,z as d}from"./runtime-core.esm-bundler-CZvn3YaB.js";import{c as f}from"./runtime-dom.esm-bundler-DTRCDnrc.js";import{t as p}from"./preload-helper-ca-nBW7U.js";import{t as m}from"./codeRepl-BV_0qCs3.js";import{t as h}from"./plugin-vue_export-helper-CxTVcLa7.js";var g={grammars:{kotlin:{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([Bb])[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:`(@p(?:aram|roperty))\\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]+)?(([Ee])\\d+)?([Uu])?([FLf])?\\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([Xx])\\h[_\\h]*([Uu])?`,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(va[lr])\\b\\s*(?<GROUP><([^<>]|\\g<GROUP>)+>)?`}},scopeName:`source.kotlin`},go:{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`}]}},match:`(?<=\\brange\\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:{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:`\\b(new)\\b(\\()`,beginCaptures:{1:{name:`entity.name.function.support.builtin.go`},2:{name:`punctuation.definition.begin.bracket.round.go`}},end:`\\)`,endCaptures:{0:{name:`punctuation.definition.end.bracket.round.go`}},patterns:[{include:`#functions`},{include:`#struct_variables_types`},{include:`#support_functions`},{include:`#type-declarations`},{include:`#generic_types`},{match:`\\w+`,name:`entity.name.type.go`},{include:`$self`}]},{begin:`\\b(make)\\b(\\()((?:(?:[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+(?:\\([^)]+\\))?)?[]*\\[]+{0,1}(?:(?!\\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`}]}},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:{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:`(?<=\\bconst\\b)\\s*\\b([.\\w]+(?:,\\s*[.\\w]+)*)\\s*((?:(?:[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+(?:\\([^)]+\\))?)?(?![]*\\[]+{0,1}\\b(?:struct|func|map)\\b)(?:[]*.\\[\\w]+(?:,\\s*[]*.\\[\\w]+)*)?\\s*=?)?`},{begin:`(?<=\\bconst\\b)\\s*(\\()`,beginCaptures:{1:{name:`punctuation.definition.begin.bracket.round.go`}},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*((?:(?:[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+(?:\\([^)]+\\))?)?(?![]*\\[]+{0,1}\\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:`\\{`,name:`punctuation.definition.begin.bracket.curly.go`},{match:`}`,name:`punctuation.definition.end.bracket.curly.go`},{match:`\\w+`,name:`entity.name.type.go`}]}},match:`(?<!\\w)(\\([]*\\[]+{0,1}[.\\w]+(?:\\[(?:[]*.\\[{}\\w]+(?:,\\s*[]*.\\[{}\\w]+)*)?])?\\))(?=\\()`},function_declaration:{begin:`^\\b(func)\\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+)?)+{0,1}])?)`},{include:`$self`}]}]},3:{patterns:[{match:`\\d\\w*`,name:`invalid.illegal.identifier.go`},{match:`\\w+`,name:`entity.name.function.go`}]}},end:`(?<=\\))\\s*((?:[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+{0,1}(?![]*\\[]+{0,1}\\b(?:struct|interface)\\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`}]}},match:`(?<=\\))\\s*((?:\\s*[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+{0,1}[-\\]*.<>\\[\\w]+\\s*(?:/[*/].*)?)$`},{include:`$self`}]},function_param_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`}]}},match:`((?:\\b\\w+,\\s*)+{0,1}\\b\\w+)\\s+(?=(?:\\s*[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+{0,1}[]*\\[]+{0,1}\\b(?:struct|interface)\\b\\s*\\{)`},{captures:{1:{patterns:[{include:`#type-declarations`},{match:`\\w+`,name:`variable.parameter.go`}]}},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`}]}},match:`((?:\\b\\w+,\\s*)+{0,1}\\b\\w+)\\s+((?:\\s*[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+{0,1}(?:[]*.\\[\\w]+{0,1}(?:\\bfunc\\b\\([^)]+{0,1}\\)(?:\\s*[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+{0,1}\\s*)+(?:[]*.\\[\\w]+|\\([^)]+{0,1}\\))?|(?:[]*\\[]+{0,1}[*.\\w]+(?:\\[[^]]+])?[*.\\w]+{0,1})+))`},{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`}]}},match:`([.\\w]+)`},{include:`$self`}]},functions:{begin:`\\b(func)\\b(?=\\()`,beginCaptures:{1:{name:`keyword.function.go`}},end:`(?<=\\))(\\s*(?:[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+)?(\\s*(?:[]*\\[]+{0,1}[*.\\w]+)?(?:\\[(?:[*.\\w]+{0,1}(?:\\[[^]]+{0,1}])?(?:,\\s+)?)+]|\\([^)]+{0,1}\\))?[*.\\w]+{0,1}\\s*(?=\\{)|\\s*(?:[]*\\[]+{0,1}(?!\\bfunc\\b)[*.\\w]+(?:\\[(?:[*.\\w]+{0,1}(?:\\[[^]]+{0,1}])?(?:,\\s+)?)+])?[*.\\w]+{0,1}|\\([^)]+{0,1}\\)))?`,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`}]}},match:`\\b(func)\\b(\\([^/]*?\\)\\s+\\([^/]*?\\))\\s+(?=\\{)`},generic_param_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`}]}},match:`((?:\\b\\w+,\\s*)+{0,1}\\b\\w+)\\s+(?=(?:\\s*[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+{0,1}[]*\\[]+{0,1}\\b(?:struct|interface)\\b\\s*\\{)`},{captures:{1:{patterns:[{include:`#type-declarations`},{match:`\\w+`,name:`variable.parameter.go`}]}},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`}]}},match:`((?:\\b\\w+,\\s*)+{0,1}\\b\\w+)\\s+((?:\\s*[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+{0,1}(?:[]*.\\[\\w]+{0,1}(?:\\bfunc\\b\\([^)]+{0,1}\\)(?:\\s*[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+{0,1}\\s*)+(?:[*.\\w]+|\\([^)]+{0,1}\\))?|(?:(?:[*.~\\w]+|\\[(?:[*.\\w]+{0,1}(?:\\[[^]]+{0,1}])?(?:,\\s+)?)+])[*.\\w]+{0,1})+))`},{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`}]}},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`}]}},match:`([*.\\w]+)(\\[[^]]+{0,1}])`},"group-functions":{patterns:[{include:`#function_declaration`},{include:`#functions_inline`},{include:`#functions`},{include:`#built_in_functions`},{include:`#support_functions`}]},"group-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":{patterns:[{include:`#const_assignment`},{include:`#var_assignment`},{include:`#variable_assignment`},{include:`#label_loop_variables`},{include:`#slice_index_variables`},{include:`#property_variables`},{include:`#switch_variables`},{include:`#other_variables`}]},hover:{patterns:[{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`}]}},match:`(?<=^\\bfield\\b)\\s+([*.\\w]+)\\s+([\\s\\S]+)`},{captures:{1:{patterns:[{include:`#type-declarations-without-brackets`},{include:`#parameter-variable-types`},{match:`\\w+`,name:`entity.name.type.go`}]}},match:`(?<=^\\breturns\\b)\\s+([\\s\\S]+)`}]},import:{patterns:[{begin:`\\b(import)\\s+`,beginCaptures:{1:{name:`keyword.control.import.go`}},end:`(?!\\G)`,patterns:[{include:`#imports`}]}]},imports:{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:`\\b(interface)\\b\\s*(\\{)`,beginCaptures:{1:{name:`keyword.interface.go`},2:{name:`punctuation.definition.begin.bracket.curly.go`}},end:`}`,endCaptures:{0:{name:`punctuation.definition.end.bracket.curly.go`}},patterns:[{include:`#interface_variables_types_field`},{include:`$self`}]},interface_variables_types_field:{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`}]}},match:`([.\\w]+)`}]},keywords:{patterns:[{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`}]}},match:`^(\\s*\\w+:\\s*|\\s*\\b(?:break|goto|continue)\\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`}},match:`\\b(?:(true|false)|(nil)|(iota))\\b`},map_types:{begin:`\\b(map)\\b(\\[)`,beginCaptures:{1:{name:`keyword.map.go`},2:{name:`punctuation.definition.begin.bracket.square.go`}},end:`(])((?:[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+{0,1}(?![]*\\[]+{0,1}\\b(?:func|struct|map)\\b)[]*\\[]+{0,1}[.\\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:`\\b(type)\\b\\s*(\\()`,beginCaptures:{1:{name:`keyword.type.go`},2:{name:`punctuation.definition.begin.bracket.round.go`}},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:`(?<=\\h)_(?=\\h)`,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:`(?<=\\h)_(?=\\h)`,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:`(?<=\\h)_(?=\\h)`,name:`punctuation.separator.constant.numeric.go`}]},10:{name:`keyword.other.unit.imaginary.go`},11:{name:`constant.numeric.decimal.go`,patterns:[{match:`(?<=\\h)_(?=\\h)`,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:`(?<=\\h)_(?=\\h)`,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:`(?<=\\h)_(?=\\h)`,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:`(?<=\\h)_(?=\\h)`,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:`(?<=\\h)_(?=\\h)`,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:`(?<=\\h)_(?=\\h)`,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:`(?<=\\h)_(?=\\h)`,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:`(?<=\\h)_(?=\\h)`,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:`(?<=\\h)_(?=\\h)`,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:`(?<=\\h)_(?=\\h)`,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:`(?<=\\h)_(?=\\h)`,name:`punctuation.separator.constant.numeric.go`}]},53:{name:`keyword.other.unit.imaginary.go`}},match:`\\G(?:(?:(?:(?:(?:(?=[.0-9])(?!0[BOXbox])([0-9](?:[0-9]|((?<=\\h)_(?=\\h)))*)((?<=[0-9])\\.|\\.(?=[0-9]))([0-9](?:[0-9]|((?<=\\h)_(?=\\h)))*)?(?:(?<!_)([Ee])(\\+?)(-?)([0-9](?:[0-9]|(?<=\\h)_(?=\\h))*))?(i(?!\\w))?(?:\\n|$)|(?=[.0-9])(?!0[BOXbox])([0-9](?:[0-9]|((?<=\\h)_(?=\\h)))*)(?<!_)([Ee])(\\+?)(-?)([0-9](?:[0-9]|(?<=\\h)_(?=\\h))*)(i(?!\\w))?(?:\\n|$))|((?<=[0-9])\\.|\\.(?=[0-9]))([0-9](?:[0-9]|((?<=\\h)_(?=\\h)))*)(?:(?<!_)([Ee])(\\+?)(-?)([0-9](?:[0-9]|(?<=\\h)_(?=\\h))*))?(i(?!\\w))?(?:\\n|$))|(0[Xx])_?(\\h(?:\\h|((?<=\\h)_(?=\\h)))*)((?<=\\h)\\.|\\.(?=\\h))(\\h(?:\\h|((?<=\\h)_(?=\\h)))*)?(?<!_)([Pp])(\\+?)(-?)([0-9](?:[0-9]|(?<=\\h)_(?=\\h))*)(i(?!\\w))?(?:\\n|$))|(0[Xx])_?(\\h(?:\\h|((?<=\\h)_(?=\\h)))*)(?<!_)([Pp])(\\+?)(-?)([0-9](?:[0-9]|(?<=\\h)_(?=\\h))*)(i(?!\\w))?(?:\\n|$))|(0[Xx])((?<=\\h)\\.|\\.(?=\\h))(\\h(?:\\h|((?<=\\h)_(?=\\h)))*)(?<!_)([Pp])(\\+?)(-?)([0-9](?:[0-9]|(?<=\\h)_(?=\\h))*)(i(?!\\w))?(?:\\n|$))`},{captures:{1:{name:`constant.numeric.decimal.go`,patterns:[{match:`(?<=\\h)_(?=\\h)`,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:`(?<=\\h)_(?=\\h)`,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:`(?<=\\h)_(?=\\h)`,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:`(?<=\\h)_(?=\\h)`,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[BOXbox])([0-9](?:[0-9]|((?<=\\h)_(?=\\h)))*)(i(?!\\w))?(?:\\n|$)|(0[Bb])_?([01](?:[01]|((?<=\\h)_(?=\\h)))*)(i(?!\\w))?(?:\\n|$))|(0[Oo]?)_?((?:[0-7]|((?<=\\h)_(?=\\h)))+)(i(?!\\w))?(?:\\n|$))|(0[Xx])_?(\\h(?:\\h|((?<=\\h)_(?=\\h)))*)(i(?!\\w))?(?:\\n|$))`},{match:`(?:[.0-9A-Z_a-z]|(?<=[EPep])[-+])+`,name:`invalid.illegal.constant.numeric.go`}]}]}},match:`(?<!\\w)\\.?\\d(?:[.0-9A-Z_a-z]|(?<=[EPep])[-+])*`},operators:{patterns:[{match:`(?<!\\w)[\\&*]+(?!\\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:{patterns:[{include:`#after_control_variables`},{captures:{1:{patterns:[{include:`#type-declarations`},{match:`\\w+`,name:`entity.name.type.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:`\\{`,name:`punctuation.definition.begin.bracket.curly.go`},{match:`}`,name:`punctuation.definition.end.bracket.curly.go`},{match:`\\w+`,name:`entity.name.type.go`}]}},match:`\\b(?!(?:struct|interface)\\b)([.\\w]+)(?<brackets>\\[(?:[^]\\[]|\\g<brackets>)*])?(?=\\{)`}]},other_variables:{match:`\\w+`,name:`variable.other.go`},package_name:{patterns:[{begin:`\\b(package)\\s+`,beginCaptures:{1:{name:`keyword.package.go`}},end:`(?!\\G)`,patterns:[{match:`\\d\\w*`,name:`invalid.illegal.identifier.go`},{match:`\\w+`,name:`entity.name.type.package.go`}]}]},"parameter-variable-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`}]}},match:`\\b([.\\w]+:(?!=))`},raw_string_literals:{begin:"`",beginCaptures:{0:{name:`punctuation.definition.string.begin.go`}},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\\h{2}|u\\h{4}|U\\h{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`}]}},match:`^\\s*\\b(type)\\b\\s*([*.\\w]+)\\s+(?!(?:=\\s*)?[]*\\[]+{0,1}\\b(?:struct|interface)\\b)([\\s\\S]+)`},{begin:`(?:^|\\s+)\\b(type)\\b\\s*([*.\\w]+)(?=\\[)`,beginCaptures:{1:{name:`keyword.type.go`},2:{patterns:[{include:`#type-declarations-without-brackets`},{match:`\\w+`,name:`entity.name.type.go`}]}},end:`(?<=])(\\s+(?:=\\s*)?(?:[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+{0,1}(?![]*\\[]+{0,1}\\b(?:struct|interface|func)\\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`}]}},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:`#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`},{match:`\\bcomparable\\b`,name:`entity.name.type.comparable.go`}]},string_escaped_char:{patterns:[{match:`\\\\([0-7]{3}|["'\\\\abfnrtv]|x\\h{2}|u\\h{4}|U\\h{8})`,name:`constant.character.escape.go`},{match:`\\\\[^"'0-7Uabfnrtuvx]`,name:`invalid.illegal.unknown-escape.go`}]},string_literals:{patterns:[{begin:`"`,beginCaptures:{0:{name:`punctuation.definition.string.begin.go`}},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]{0,2}((\\d+|\\*)?(\\.?(\\d+|\\*|(\\[\\d+])\\*?)?(\\[\\d+])?)?))?[%EFGTUXb-gopqstvwx]`,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`}]}},match:`^\\s*\\b(type)\\b\\s*([.\\w]+)`},struct_variable_types_fields_multi:{patterns:[{begin:`\\b(\\w+(?:,\\s*\\b\\w+)*(?:\\s*[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+{0,1}\\s*[]*\\[]+{0,1})\\b(struct)\\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`}},end:`}`,endCaptures:{0:{name:`punctuation.definition.end.bracket.curly.go`}},patterns:[{include:`#struct_variables_types_fields`},{include:`$self`}]},{begin:`\\b(\\w+(?:,\\s*\\b\\w+)*(?:\\s*[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+{0,1}\\s*[]*\\[]+{0,1})\\b(interface)\\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`}},end:`}`,endCaptures:{0:{name:`punctuation.definition.end.bracket.curly.go`}},patterns:[{include:`#interface_variables_types_field`},{include:`$self`}]},{begin:`\\b(\\w+(?:,\\s*\\b\\w+)*(?:\\s*[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+{0,1}\\s*[]*\\[]+{0,1})\\b(func)\\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`}},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:`\\b(struct)\\b\\s*(\\{)`,beginCaptures:{1:{name:`keyword.struct.go`},2:{name:`punctuation.definition.begin.bracket.curly.go`}},end:`}`,endCaptures:{0:{name:`punctuation.definition.end.bracket.curly.go`}},patterns:[{include:`#struct_variables_types_fields`},{include:`$self`}]},struct_variables_types_fields:{patterns:[{include:`#struct_variable_types_fields_multi`},{captures:{1:{patterns:[{include:`#type-declarations`},{match:`\\w+`,name:`entity.name.type.go`}]}},match:`(?<=\\{)\\s*((?:\\s*[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+{0,1}[]*.\\[\\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`}]}},match:`(?<=\\{)\\s*((?:\\w+,\\s*)+{0,1}\\w+\\s+)((?:\\s*[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+{0,1}[]*.\\[\\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*)+{0,1}\\w+\\s+)?((?:\\s*[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+{0,1}[^"/`\\s]+;?)'}]}},match:'(?<=\\{)((?:\\s*(?:(?:\\w+,\\s*)+{0,1}\\w+\\s+)?(?:\\s*[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+{0,1}[^"/`\\s]+;?)+)\\s*(?=})'},{captures:{1:{patterns:[{include:`#type-declarations`},{match:`\\w+`,name:`entity.name.type.go`}]}},match:'((?:\\s*[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+{0,1}[*.\\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`}]}},match:'\\b(\\w+(?:\\s*,\\s*\\b\\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`}]}},match:`(?:((?<=\\.)\\b\\w+)|\\b(\\w+))(?<brackets>\\[(?:[^]\\[]|\\g<brackets>)*])?(?=\\()`},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`}},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`}]}},match:`^\\s*\\b(case)\\b\\s+([!*,.<=>\\w\\s]+)(:)(\\s*/[*/]\\s*.*)?$`},{begin:`\\bcase\\b`,beginCaptures:{0:{name:`keyword.control.go`}},end:`:`,endCaptures:{0:{name:`punctuation.other.colon.go`}},patterns:[{include:`#type-declarations`},{match:`\\w+`,name:`entity.name.type.go`}]},{include:`$self`}]},switch_variables:{patterns:[{captures:{1:{name:`keyword.control.go`},2:{patterns:[{include:`#type-declarations`},{include:`#support_functions`},{include:`#variable_assignment`},{match:`\\w+`,name:`variable.other.go`}]}},match:`^\\s*\\b(case)\\b\\s+([\\s\\S]+:\\s*(?:/[*/].*)?)$`},{begin:`(?<=\\bswitch\\b)\\s*((?:[.\\w]+(?:\\s*[-!%\\&+,/:<=>|]+\\s*[.\\w]+)*\\s*[-!%\\&+,/:<=>|]+)?\\s*[-\\]%\\&(-+./<>\\[|\\w]+{0,1}\\s*(?:;\\s*[-\\]%\\&(-+./<>\\[|\\w]+\\s*)?)(\\{)`,beginCaptures:{1:{patterns:[{include:`#support_functions`},{include:`#type-declarations`},{include:`#variable_assignment`},{match:`\\w+`,name:`variable.other.go`}]},2:{name:`punctuation.definition.begin.bracket.curly.go`}},end:`}`,endCaptures:{0:{name:`punctuation.definition.end.bracket.curly.go`}},patterns:[{begin:`\\bcase\\b`,beginCaptures:{0:{name:`keyword.control.go`}},end:`:`,endCaptures:{0:{name:`punctuation.other.colon.go`}},patterns:[{include:`#support_functions`},{include:`#type-declarations`},{include:`#variable_assignment`},{match:`\\w+`,name:`variable.other.go`}]},{include:`$self`}]}]},syntax_errors:{patterns:[{captures:{1:{name:`invalid.illegal.slice.go`}},match:`\\[](\\s+)`},{match:`\\b0[0-7]*[89]\\d*\\b`,name:`invalid.illegal.numeric.go`}]},terminators:{match:`;`,name:`punctuation.terminator.go`},"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":{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-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:`\\{`,name:`punctuation.definition.begin.bracket.curly.go`},{match:`}`,name:`punctuation.definition.end.bracket.curly.go`},{match:`\\w+`,name:`entity.name.type.go`}]}},match:`(?<=\\.\\()(?:\\b(type)\\b|((?:\\s*[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+{0,1}[]*\\[]+{0,1}[.\\w]+(?:\\[(?:[]*.\\[{}\\w]+(?:,\\s*[]*.\\[{}\\w]+)*)?])?))(?=\\))`},var_assignment:{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:`(?<=\\bvar\\b)\\s*\\b([.\\w]+(?:,\\s*[.\\w]+)*)\\s*((?:(?:[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+(?:\\([^)]+\\))?)?(?![]*\\[]+{0,1}\\b(?:struct|func|map)\\b)(?:[]*.\\[\\w]+(?:,\\s*[]*.\\[\\w]+)*)?\\s*=?)?`},{begin:`(?<=\\bvar\\b)\\s*(\\()`,beginCaptures:{1:{name:`punctuation.definition.begin.bracket.round.go`}},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*((?:(?:[]*\\[]+{0,1}(?:<-\\s*)?\\bchan\\b(?:\\s*<-)?\\s*)+(?:\\([^)]+\\))?)?(?![]*\\[]+{0,1}\\b(?:struct|func|map)\\b)(?:[]*.\\[\\w]+(?:,\\s*[]*.\\[\\w]+)*)?\\s*=?)?`},{include:`$self`}]}]},variable_assignment:{patterns:[{captures:{0:{patterns:[{include:`#delimiters`},{match:`\\d\\w*`,name:`invalid.illegal.identifier.go`},{match:`\\w+`,name:`variable.other.assignment.go`}]}},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`}]}},match:`\\b[*.\\w]+(?:,\\s*[*.\\w]+)*(?=\\s*=(?!=))`}]}},scopeName:`source.go`},rust:{displayName:`Rust`,name:`rust`,patterns:[{begin:`(<)(\\[)`,beginCaptures:{1:{name:`punctuation.brackets.angle.rust`},2:{name:`punctuation.brackets.square.rust`}},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`}},match:`(\\$)((crate)|([A-Z]\\w*))(\\s*(:)\\s*(block|expr(?:_2021)?|ident|item|lifetime|literal|meta|pat(?:_param)?|path|stmt|tt|ty|vis)\\b)?`,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`}},match:`(\\$)([a-z]\\w*)(\\s*(:)\\s*(block|expr(?:_2021)?|ident|item|lifetime|literal|meta|pat(?:_param)?|path|stmt|tt|ty|vis)\\b)?`,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`}},match:`\\b(macro_rules!)\\s+(([0-9_a-z]+)|([A-Z][0-9_a-z]*))\\s+(\\{)`,name:`meta.macro.rules.rust`},{captures:{1:{name:`storage.type.rust`},2:{name:`entity.name.module.rust`}},match:`(mod)\\s+((?:r#(?!crate|[Ss]elf|super))?[a-z][0-9A-Z_a-z]*)`},{begin:`\\b(extern)\\s+(crate)`,beginCaptures:{1:{name:`storage.type.rust`},2:{name:`keyword.other.crate.rust`}},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`}},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`}},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:[{match:`/\\*\\*/`,name:`comment.block.rust`},{begin:`/\\*\\*`,end:`\\*/`,name:`comment.block.documentation.rust`,patterns:[{include:`#block-comments`}]},{begin:`/\\*(?!\\*)`,end:`\\*/`,name:`comment.block.rust`,patterns:[{include:`#block-comments`}]}]},comments:{patterns:[{captures:{1:{name:`punctuation.definition.comment.rust`}},match:`(///).*$`,name:`comment.line.documentation.rust`},{captures:{1:{name:`punctuation.definition.comment.rust`}},match:`(//).*$`,name:`comment.line.double-slash.rust`}]},constants:{patterns:[{match:`\\b[A-Z]{2}[0-9A-Z_]*\\b`,name:`constant.other.caps.rust`},{captures:{1:{name:`storage.type.rust`},2:{name:`constant.other.caps.rust`}},match:`\\b(const)\\s+([A-Z][0-9A-Z_a-z]*)\\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`}},match:`\\b\\d[_\\d]*(\\.?)[_\\d]*(?:([Ee])([-+]?)([_\\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`}},match:`\\b0x[A-F_a-f\\d]+(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`}},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`}},match:`\\b0b[01_]+(i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\b`,name:`constant.numeric.bin.rust`},{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`}},match:`(\\\\)(?:(x[0-7][A-Fa-f\\d])|(u(\\{)[A-Fa-f\\d]{4,6}(}))|.)`,name:`constant.character.escape.rust`},functions:{patterns:[{captures:{1:{name:`keyword.other.rust`},2:{name:`punctuation.brackets.round.rust`}},match:`\\b(pub)(\\()`},{begin:`\\b(fn)\\s+((?:r#(?!crate|[Ss]elf|super))?[0-9A-Z_a-z]+)((\\()|(<))`,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`}},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))?[0-9A-Z_a-z]+)(\\()`,beginCaptures:{1:{name:`entity.name.function.rust`},2:{name:`punctuation.brackets.round.rust`}},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))?[0-9A-Z_a-z]+)(?=::<.*>\\()`,beginCaptures:{1:{name:`entity.name.function.rust`}},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:[{match:`\\b(Some|None)\\b`,name:`entity.name.type.option.rust`},{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`}},match:`(\\{)[^"{}]*(})`,name:`meta.interpolation.rust`},keywords:{patterns:[{match:`\\b(await|break|continue|do|else|for|if|loop|match|return|try|while|yield)\\b`,name:`keyword.control.rust`},{match:`\\b(extern|let|macro|mod)\\b`,name:`keyword.other.rust storage.type.rust`},{match:`\\b(const)\\b`,name:`storage.modifier.rust`},{match:`\\b(type)\\b`,name:`keyword.declaration.type.rust storage.type.rust`},{match:`\\b(enum)\\b`,name:`keyword.declaration.enum.rust storage.type.rust`},{match:`\\b(trait)\\b`,name:`keyword.declaration.trait.rust storage.type.rust`},{match:`\\b(struct)\\b`,name:`keyword.declaration.struct.rust storage.type.rust`},{match:`\\b(abstract|static)\\b`,name:`storage.modifier.rust`},{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`},{match:`\\bfn\\b`,name:`keyword.other.fn.rust`},{match:`\\bcrate\\b`,name:`keyword.other.crate.rust`},{match:`\\bmut\\b`,name:`storage.modifier.mut.rust`},{match:`([\\^|]|\\|\\||&&|<<|>>|!)(?!=)`,name:`keyword.operator.logical.rust`},{match:`&(?![\\&=])`,name:`keyword.operator.borrow.and.rust`},{match:`((?:[-%\\&*+/^|]|<<|>>)=)`,name:`keyword.operator.assignment.rust`},{match:`(?<![<>])=(?![=>])`,name:`keyword.operator.assignment.equal.rust`},{match:`(=(=)?(?!>)|!=|<=|(?<!=)>=)`,name:`keyword.operator.comparison.rust`},{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`}},match:`(?:\\b|(?:(\\))|(])|(})))[\\t ]+([<>])[\\t ]+(?:\\b|(?:(\\()|(\\[)|(\\{)))`},{match:`::`,name:`keyword.operator.namespace.rust`},{captures:{1:{name:`keyword.operator.dereference.rust`}},match:`(\\*)(?=\\w+)`},{match:`@`,name:`keyword.operator.subpattern.rust`},{match:`\\.(?!\\.)`,name:`keyword.operator.access.dot.rust`},{match:`\\.{2}([.=])?`,name:`keyword.operator.range.rust`},{match:`:(?!:)`,name:`keyword.operator.key-value.rust`},{match:`->|<-`,name:`keyword.operator.arrow.skinny.rust`},{match:`=>`,name:`keyword.operator.arrow.fat.rust`},{match:`\\$`,name:`keyword.operator.macro.dollar.rust`},{match:`\\?`,name:`keyword.operator.question.rust`}]},lifetimes:{patterns:[{captures:{1:{name:`punctuation.definition.lifetime.rust`},2:{name:`entity.name.type.lifetime.rust`}},match:`(')([A-Z_a-z][0-9A-Z_a-z]*)(?!')\\b`},{captures:{1:{name:`keyword.operator.borrow.rust`},2:{name:`punctuation.definition.lifetime.rust`},3:{name:`entity.name.type.lifetime.rust`}},match:`(&)(')([A-Z_a-z][0-9A-Z_a-z]*)(?!')\\b`}]},lvariables:{patterns:[{match:`\\b[Ss]elf\\b`,name:`variable.language.self.rust`},{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`}},match:`(([_a-z][0-9A-Z_a-z]*!)|([A-Z_][0-9A-Z_a-z]*!))`,name:`meta.macro.rust`}]},namespaces:{patterns:[{captures:{1:{name:`entity.name.namespace.rust`},2:{name:`keyword.operator.namespace.rust`}},match:`(?<![0-9A-Z_a-z])([0-9A-Z_a-z]+)((?<!s(?:uper|elf))::)`}]},punctuation:{patterns:[{match:`,`,name:`punctuation.comma.rust`},{match:`[{}]`,name:`punctuation.brackets.curly.rust`},{match:`[()]`,name:`punctuation.brackets.round.rust`},{match:`;`,name:`punctuation.semi.rust`},{match:`[]\\[]`,name:`punctuation.brackets.square.rust`},{match:`(?<!=)[<>]`,name:`punctuation.brackets.angle.rust`}]},strings:{patterns:[{begin:`(b?)(")`,beginCaptures:{1:{name:`string.quoted.byte.raw.rust`},2:{name:`punctuation.definition.string.rust`}},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`}},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`}},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`}},match:`(?<![A-Za-z])(f32|f64|i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)\\b`},{begin:`\\b(_?[A-Z][0-9A-Z_a-z]*)(<)`,beginCaptures:{1:{name:`entity.name.type.rust`},2:{name:`punctuation.brackets.angle.rust`}},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`}]},{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`}},match:`\\b(trait)\\s+(_?[A-Z][0-9A-Z_a-z]*)\\b`},{captures:{1:{name:`keyword.declaration.struct.rust storage.type.rust`},2:{name:`entity.name.type.struct.rust`}},match:`\\b(struct)\\s+(_?[A-Z][0-9A-Z_a-z]*)\\b`},{captures:{1:{name:`keyword.declaration.enum.rust storage.type.rust`},2:{name:`entity.name.type.enum.rust`}},match:`\\b(enum)\\s+(_?[A-Z][0-9A-Z_a-z]*)\\b`},{captures:{1:{name:`keyword.declaration.type.rust storage.type.rust`},2:{name:`entity.name.type.declaration.rust`}},match:`\\b(type)\\s+(_?[A-Z][0-9A-Z_a-z]*)\\b`},{match:`\\b_?[A-Z][0-9A-Z_a-z]*\\b(?!!)`,name:`entity.name.type.rust`}]},variables:{patterns:[{match:`\\b(?<!(?<!\\.)\\.)(?:r#(?!(crate|[Ss]elf|super)))?[0-9_a-z]+\\b`,name:`variable.other.rust`}]}},scopeName:`source.rust`},python:{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*(\\())`,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]?('''|"""|["']))`,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+\\p{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+\\p{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+\\p{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+\\p{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\\h{2}|[0-7]{1,3}|["'\\\\abfnrtv])`,name:`constant.character.escape.python`},"escape-sequence-unicode":{patterns:[{match:`\\\\(u\\h{4}|U\\h{8}|N\\{[\\w\\s]+?})`,name:`constant.character.escape.python`}]},expression:{patterns:[{include:`#expression-base`},{include:`#member-access`},{match:`\\b([_[:alpha:]]\\w*)\\b`}]},"expression-bare":{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":{patterns:[{include:`#comments`},{include:`#expression-bare`},{include:`#line-continuation`}]},"f-expression":{patterns:[{include:`#expression-bare`},{include:`#member-access`},{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])([BUbu])?('''|""")`,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])([BUbu])?((["']))`,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`}},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`}},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`}},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([BUbu])([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([BUbu])([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`}},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:`(=(![ars])?)(?=})`,name:`storage.type.format.python`},{match:`(=?![ars])(?=})`,name:`storage.type.format.python`},{captures:{1:{name:`storage.type.format.python`},2:{name:`storage.type.format.python`}},match:`(=?(?:![ars])?)(:\\w?[<=>^]?[- +]?#?\\d*,?(\\.\\d+)?[%EFGXb-gnosx]?)(?=})`},{include:`#fstring-terminator-multi-tail`}]},"fstring-terminator-multi-tail":{begin:`(=?(?:![ars])?)(:)(?=.*?\\{)`,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:`([%EFGXb-gnosx])(?=})`,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:`(=(![ars])?)(?=})`,name:`storage.type.format.python`},{match:`(=?![ars])(?=})`,name:`storage.type.format.python`},{captures:{1:{name:`storage.type.format.python`},2:{name:`storage.type.format.python`}},match:`(=?(?:![ars])?)(:\\w?[<=>^]?[- +]?#?\\d*,?(\\.\\d+)?[%EFGXb-gnosx]?)(?=})`},{include:`#fstring-terminator-single-tail`}]},"fstring-terminator-single-tail":{begin:`(=?(?:![ars])?)(:)(?=.*?\\{)`,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:`([%EFGXb-gnosx])(?=})`,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*(\\())`,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:]]\\p{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`},{match:`\\b([_[:alpha:]]\\w*)\\b`,name:`meta.function-call.generic.python`}]},generator:{begin:`\\bfor\\b`,beginCaptures:{0:{name:`keyword.control.flow.python`}},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":{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`},{match:`!\\b`,name:`invalid.illegal.operator.python`}]},import:{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:{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`}},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|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|len??|long|lshift|lt|missing|mod|mul|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`}},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":{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])(_?\\h)+\\b`,name:`constant.numeric.hex.python`},"number-long":{captures:{2:{name:`storage.type.number.python`}},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*(?=\\()`,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+\\p{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\\h{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:`\\\\([ABDSWZbdsw])`,name:`support.other.escape.special.regexp`},"regexp-escape-unicode":{match:`\\\\(u\\h{4}|U\\h{8})`,name:`constant.character.unicode.regexp`},"regexp-flags":{match:`\\(\\?[Laimsux]+\\)`,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+\\p{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+\\p{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+\\p{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+\\p{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(_*\\p{upper}[_\\d]*\\p{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`},{match:`\\b(?<!\\.)as\\b(?=.*[:\\\\])`,name:`keyword.control.flow.python`},{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*|\\[[^]"']+])*(![ars])?(:\\w?[<=>^]?[- +]?#?\\d*,?(\\.\\d+)?[%EFGXb-gnosx]?)?})`,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*|\\[[^]"']+])*(![ars])?(:)[^\\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+|\\*))?([Lhl])?[%EFGXa-giorsux])`,name:`meta.format.percent.python`},"string-line-continuation":{match:`\\\\$`,name:`constant.language.python`},"string-multi-bad-brace1-formatting-raw":{begin:`(?=\\{%(.*?(?!'''|"""))%})`,end:`(?='''|""")`,patterns:[{include:`#string-consume-escape`}]},"string-multi-bad-brace1-formatting-unicode":{begin:`(?=\\{%(.*?(?!'''|"""))%})`,end:`(?='''|""")`,patterns:[{include:`#escape-sequence-unicode`},{include:`#escape-sequence`},{include:`#string-line-continuation`}]},"string-multi-bad-brace2-formatting-raw":{begin:`(?!\\{\\{)(?=\\{(\\w*?(?!'''|""")[^!.:\\[}\\w]).*?(?!'''|""")})`,end:`(?='''|""")`,patterns:[{include:`#string-consume-escape`},{include:`#string-formatting`}]},"string-multi-bad-brace2-formatting-unicode":{begin:`(?!\\{\\{)(?=\\{(\\w*?(?!'''|""")[^!.:\\[}\\w]).*?(?!'''|""")})`,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)))%})`,end:`(?=(["'])|((?<!\\\\)\\n))`,patterns:[{include:`#string-consume-escape`}]},"string-single-bad-brace1-formatting-unicode":{begin:`(?=\\{%(.*?(?!(["'])|((?<!\\\\)\\n)))%})`,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))})`,end:`(?=(["'])|((?<!\\\\)\\n))`,patterns:[{include:`#string-consume-escape`},{include:`#string-formatting`}]},"string-single-bad-brace2-formatting-unicode":{begin:`(?!\\{\\{)(?=\\{(\\w*?(?!(["'])|((?<!\\\\)\\n))[^!.:\\[}\\w]).*?(?!(["'])|((?<!\\\\)\\n))})`,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`}},theme:{light:{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:!0,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`},dark:{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:!0,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`}}},_=class extends Error{constructor(e){super(e),this.name=`ShikiError`}};function v(e){return y(e)}function y(e){return Array.isArray(e)?ee(e):e instanceof RegExp?e:typeof e==`object`?b(e):e}function ee(e){let t=[];for(let n=0,r=e.length;n<r;n++)t[n]=y(e[n]);return t}function b(e){let t={};for(let n in e)t[n]=y(e[n]);return t}function x(e,...t){return t.forEach(t=>{for(let n in t)e[n]=t[n]}),e}function S(e){let t=~e.lastIndexOf(`/`)||~e.lastIndexOf(`\\`);return t===0?e:~t===e.length-1?S(e.substring(0,e.length-1)):e.substr(~t+1)}var te=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,C=class{static hasCaptures(e){return e===null?!1:(te.lastIndex=0,te.test(e))}static replaceCaptures(e,t,n){return e.replace(te,(e,r,i,a)=>{let o=n[parseInt(r||i,10)];if(o){let e=t.substring(o.start,o.end);for(;e[0]===`.`;)e=e.substring(1);switch(a){case`downcase`:return e.toLowerCase();case`upcase`:return e.toUpperCase();default:return e}}else return e})}};function w(e,t){return e<t?-1:+(e>t)}function ne(e,t){if(e===null&&t===null)return 0;if(!e)return-1;if(!t)return 1;let n=e.length,r=t.length;if(n===r){for(let r=0;r<n;r++){let n=w(e[r],t[r]);if(n!==0)return n}return 0}return n-r}function re(e){return!!(/^#[0-9a-f]{6}$/i.test(e)||/^#[0-9a-f]{8}$/i.test(e)||/^#[0-9a-f]{3}$/i.test(e)||/^#[0-9a-f]{4}$/i.test(e))}function ie(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,`\\$&`)}var ae=class{constructor(e){this.fn=e}cache=new Map;get(e){if(this.cache.has(e))return this.cache.get(e);let t=this.fn(e);return this.cache.set(e,t),t}},oe=class{constructor(e,t,n){this._colorMap=e,this._defaults=t,this._root=n}static createFromRawTheme(e,t){return this.createFromParsedTheme(de(e),t)}static createFromParsedTheme(e,t){return pe(e,t)}_cachedMatchRoot=new ae(e=>this._root.match(e));getColorMap(){return this._colorMap.getColorMap()}getDefaults(){return this._defaults}match(e){if(e===null)return this._defaults;let t=e.scopeName,n=this._cachedMatchRoot.get(t).find(t=>ce(e.parent,t.parentScopes));return n?new ue(n.fontStyle,n.foreground,n.background):null}},se=class e{constructor(e,t){this.parent=e,this.scopeName=t}static push(t,n){for(let r of n)t=new e(t,r);return t}static from(...t){let n=null;for(let r=0;r<t.length;r++)n=new e(n,t[r]);return n}push(t){return new e(this,t)}getSegments(){let e=this,t=[];for(;e;)t.push(e.scopeName),e=e.parent;return t.reverse(),t}toString(){return this.getSegments().join(` `)}extends(e){return this===e?!0:this.parent===null?!1:this.parent.extends(e)}getExtensionIfDefined(e){let t=[],n=this;for(;n&&n!==e;)t.push(n.scopeName),n=n.parent;return n===e?t.reverse():void 0}};function ce(e,t){if(t.length===0)return!0;for(let n=0;n<t.length;n++){let r=t[n],i=!1;if(r===`>`){if(n===t.length-1)return!1;r=t[++n],i=!0}for(;e&&!le(e.scopeName,r);){if(i)return!1;e=e.parent}if(!e)return!1;e=e.parent}return!0}function le(e,t){return t===e||e.startsWith(t)&&e[t.length]===`.`}var ue=class{constructor(e,t,n){this.fontStyle=e,this.foregroundId=t,this.backgroundId=n}};function de(e){if(!e||!e.settings||!Array.isArray(e.settings))return[];let t=e.settings,n=[],r=0;for(let e=0,i=t.length;e<i;e++){let i=t[e];if(!i.settings)continue;let a;if(typeof i.scope==`string`){let e=i.scope;e=e.replace(/^[,]+/,``),e=e.replace(/[,]+$/,``),a=e.split(`,`)}else a=Array.isArray(i.scope)?i.scope:[``];let o=-1;if(typeof i.settings.fontStyle==`string`){o=0;let e=i.settings.fontStyle.split(` `);for(let t=0,n=e.length;t<n;t++)switch(e[t]){case`italic`:o|=1;break;case`bold`:o|=2;break;case`underline`:o|=4;break;case`strikethrough`:o|=8;break}}let s=null;typeof i.settings.foreground==`string`&&re(i.settings.foreground)&&(s=i.settings.foreground);let c=null;typeof i.settings.background==`string`&&re(i.settings.background)&&(c=i.settings.background);for(let t=0,i=a.length;t<i;t++){let i=a[t].trim().split(` `),l=i[i.length-1],u=null;i.length>1&&(u=i.slice(0,i.length-1),u.reverse()),n[r++]=new fe(l,u,e,o,s,c)}}return n}var fe=class{constructor(e,t,n,r,i,a){this.scope=e,this.parentScopes=t,this.index=n,this.fontStyle=r,this.foreground=i,this.background=a}},T=(e=>(e[e.NotSet=-1]=`NotSet`,e[e.None=0]=`None`,e[e.Italic=1]=`Italic`,e[e.Bold=2]=`Bold`,e[e.Underline=4]=`Underline`,e[e.Strikethrough=8]=`Strikethrough`,e))(T||{});function pe(e,t){e.sort((e,t)=>{let n=w(e.scope,t.scope);return n!==0||(n=ne(e.parentScopes,t.parentScopes),n!==0)?n:e.index-t.index});let n=0,r=`#000000`,i=`#ffffff`;for(;e.length>=1&&e[0].scope===``;){let t=e.shift();t.fontStyle!==-1&&(n=t.fontStyle),t.foreground!==null&&(r=t.foreground),t.background!==null&&(i=t.background)}let a=new me(t),o=new ue(n,a.getId(r),a.getId(i)),s=new _e(new ge(0,null,-1,0,0),[]);for(let t=0,n=e.length;t<n;t++){let n=e[t];s.insert(0,n.scope,n.parentScopes,n.fontStyle,a.getId(n.foreground),a.getId(n.background))}return new oe(a,o,s)}var me=class{_isFrozen;_lastColorId;_id2color;_color2id;constructor(e){if(this._lastColorId=0,this._id2color=[],this._color2id=Object.create(null),Array.isArray(e)){this._isFrozen=!0;for(let t=0,n=e.length;t<n;t++)this._color2id[e[t]]=t,this._id2color[t]=e[t]}else this._isFrozen=!1}getId(e){if(e===null)return 0;e=e.toUpperCase();let t=this._color2id[e];if(t)return t;if(this._isFrozen)throw Error(`Missing color in color map - ${e}`);return t=++this._lastColorId,this._color2id[e]=t,this._id2color[t]=e,t}getColorMap(){return this._id2color.slice(0)}},he=Object.freeze([]),ge=class e{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(e,t,n,r,i){this.scopeDepth=e,this.parentScopes=t||he,this.fontStyle=n,this.foreground=r,this.background=i}clone(){return new e(this.scopeDepth,this.parentScopes,this.fontStyle,this.foreground,this.background)}static cloneArr(e){let t=[];for(let n=0,r=e.length;n<r;n++)t[n]=e[n].clone();return t}acceptOverwrite(e,t,n,r){this.scopeDepth>e?console.log(`how did this happen?`):this.scopeDepth=e,t!==-1&&(this.fontStyle=t),n!==0&&(this.foreground=n),r!==0&&(this.background=r)}},_e=class e{constructor(e,t=[],n={}){this._mainRule=e,this._children=n,this._rulesWithParentScopes=t}_rulesWithParentScopes;static _cmpBySpecificity(e,t){if(e.scopeDepth!==t.scopeDepth)return t.scopeDepth-e.scopeDepth;let n=0,r=0;for(;e.parentScopes[n]===`>`&&n++,t.parentScopes[r]===`>`&&r++,!(n>=e.parentScopes.length||r>=t.parentScopes.length);){let i=t.parentScopes[r].length-e.parentScopes[n].length;if(i!==0)return i;n++,r++}return t.parentScopes.length-e.parentScopes.length}match(t){if(t!==``){let e=t.indexOf(`.`),n,r;if(e===-1?(n=t,r=``):(n=t.substring(0,e),r=t.substring(e+1)),this._children.hasOwnProperty(n))return this._children[n].match(r)}let n=this._rulesWithParentScopes.concat(this._mainRule);return n.sort(e._cmpBySpecificity),n}insert(t,n,r,i,a,o){if(n===``){this._doInsertHere(t,r,i,a,o);return}let s=n.indexOf(`.`),c,l;s===-1?(c=n,l=``):(c=n.substring(0,s),l=n.substring(s+1));let u;this._children.hasOwnProperty(c)?u=this._children[c]:(u=new e(this._mainRule.clone(),ge.cloneArr(this._rulesWithParentScopes)),this._children[c]=u),u.insert(t+1,l,r,i,a,o)}_doInsertHere(e,t,n,r,i){if(t===null){this._mainRule.acceptOverwrite(e,n,r,i);return}for(let a=0,o=this._rulesWithParentScopes.length;a<o;a++){let o=this._rulesWithParentScopes[a];if(ne(o.parentScopes,t)===0){o.acceptOverwrite(e,n,r,i);return}}n===-1&&(n=this._mainRule.fontStyle),r===0&&(r=this._mainRule.foreground),i===0&&(i=this._mainRule.background),this._rulesWithParentScopes.push(new ge(e,t,n,r,i))}},E=class e{static toBinaryStr(e){return e.toString(2).padStart(32,`0`)}static print(t){let n=e.getLanguageId(t),r=e.getTokenType(t),i=e.getFontStyle(t),a=e.getForeground(t),o=e.getBackground(t);console.log({languageId:n,tokenType:r,fontStyle:i,foreground:a,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(t,n,r,i,a,o,s){let c=e.getLanguageId(t),l=e.getTokenType(t),u=+!!e.containsBalancedBrackets(t),d=e.getFontStyle(t),f=e.getForeground(t),p=e.getBackground(t);return n!==0&&(c=n),r!==8&&(l=ye(r)),i!==null&&(u=+!!i),a!==-1&&(d=a),o!==0&&(f=o),s!==0&&(p=s),(c<<0|l<<8|u<<10|d<<11|f<<15|p<<24)>>>0}};function ve(e){return e}function ye(e){return e}function be(e,t){let n=[],r=Se(e),i=r.next();for(;i!==null;){let e=0;if(i.length===2&&i.charAt(1)===`:`){switch(i.charAt(0)){case`R`:e=1;break;case`L`:e=-1;break;default:console.log(`Unknown priority ${i} in scope selector`)}i=r.next()}let t=o();if(n.push({matcher:t,priority:e}),i!==`,`)break;i=r.next()}return n;function a(){if(i===`-`){i=r.next();let e=a();return t=>!!e&&!e(t)}if(i===`(`){i=r.next();let e=s();return i===`)`&&(i=r.next()),e}if(xe(i)){let e=[];do e.push(i),i=r.next();while(xe(i));return n=>t(e,n)}return null}function o(){let e=[],t=a();for(;t;)e.push(t),t=a();return t=>e.every(e=>e(t))}function s(){let e=[],t=o();for(;t&&(e.push(t),i===`|`||i===`,`);){do i=r.next();while(i===`|`||i===`,`);t=o()}return t=>e.some(e=>e(t))}}function xe(e){return!!e&&!!e.match(/[\w\.:]+/)}function Se(e){let t=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g,n=t.exec(e);return{next:()=>{if(!n)return null;let r=n[0];return n=t.exec(e),r}}}function Ce(e){typeof e.dispose==`function`&&e.dispose()}var D=class{constructor(e){this.scopeName=e}toKey(){return this.scopeName}},we=class{constructor(e,t){this.scopeName=e,this.ruleName=t}toKey(){return`${this.scopeName}#${this.ruleName}`}},Te=class{_references=[];_seenReferenceKeys=new Set;get references(){return this._references}visitedRule=new Set;add(e){let t=e.toKey();this._seenReferenceKeys.has(t)||(this._seenReferenceKeys.add(t),this._references.push(e))}},Ee=class{constructor(e,t){this.repo=e,this.initialScopeName=t,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new D(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){let e=this.Q;this.Q=[];let t=new Te;for(let n of e)De(n,this.initialScopeName,this.repo,t);for(let e of t.references)if(e instanceof D){if(this.seenFullScopeRequests.has(e.scopeName))continue;this.seenFullScopeRequests.add(e.scopeName),this.Q.push(e)}else{if(this.seenFullScopeRequests.has(e.scopeName)||this.seenPartialScopeRequests.has(e.toKey()))continue;this.seenPartialScopeRequests.add(e.toKey()),this.Q.push(e)}}};function De(e,t,n,r){let i=n.lookup(e.scopeName);if(!i){if(e.scopeName===t)throw Error(`No grammar provided for <${t}>`);return}let a=n.lookup(t);e instanceof D?O({baseGrammar:a,selfGrammar:i},r):Oe(e.ruleName,{baseGrammar:a,selfGrammar:i,repository:i.repository},r);let o=n.injections(e.scopeName);if(o)for(let e of o)r.add(new D(e))}function Oe(e,t,n){if(t.repository&&t.repository[e]){let r=t.repository[e];ke([r],t,n)}}function O(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&ke(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&ke(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function ke(e,t,n){for(let r of e){if(n.visitedRule.has(r))continue;n.visitedRule.add(r);let e=r.repository?x({},t.repository,r.repository):t.repository;Array.isArray(r.patterns)&&ke(r.patterns,{...t,repository:e},n);let i=r.include;if(!i)continue;let a=Fe(i);switch(a.kind){case 0:O({...t,selfGrammar:t.baseGrammar},n);break;case 1:O(t,n);break;case 2:Oe(a.ruleName,{...t,repository:e},n);break;case 3:case 4:let r=a.scopeName===t.selfGrammar.scopeName?t.selfGrammar:a.scopeName===t.baseGrammar.scopeName?t.baseGrammar:void 0;if(r){let i={baseGrammar:t.baseGrammar,selfGrammar:r,repository:e};a.kind===4?Oe(a.ruleName,i,n):O(i,n)}else a.kind===4?n.add(new we(a.scopeName,a.ruleName)):n.add(new D(a.scopeName));break}}}var Ae=class{kind=0},je=class{kind=1},Me=class{constructor(e){this.ruleName=e}kind=2},Ne=class{constructor(e){this.scopeName=e}kind=3},Pe=class{constructor(e,t){this.scopeName=e,this.ruleName=t}kind=4};function Fe(e){if(e===`$base`)return new Ae;if(e===`$self`)return new je;let t=e.indexOf(`#`);return t===-1?new Ne(e):t===0?new Me(e.substring(1)):new Pe(e.substring(0,t),e.substring(t+1))}var Ie=/\\(\d+)/,Le=/\\(\d+)/g,Re=-1,ze=-2;function Be(e){return e}function Ve(e){return e}var k=class{$location;id;_nameIsCapturing;_name;_contentNameIsCapturing;_contentName;constructor(e,t,n,r){this.$location=e,this.id=t,this._name=n||null,this._nameIsCapturing=C.hasCaptures(this._name),this._contentName=r||null,this._contentNameIsCapturing=C.hasCaptures(this._contentName)}get debugName(){let e=this.$location?`${S(this.$location.filename)}:${this.$location.line}`:`unknown`;return`${this.constructor.name}#${this.id} @ ${e}`}getName(e,t){return!this._nameIsCapturing||this._name===null||e===null||t===null?this._name:C.replaceCaptures(this._name,e,t)}getContentName(e,t){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:C.replaceCaptures(this._contentName,e,t)}},He=class extends k{retokenizeCapturedWithRuleId;constructor(e,t,n,r,i){super(e,t,n,r),this.retokenizeCapturedWithRuleId=i}dispose(){}collectPatterns(e,t){throw Error(`Not supported!`)}compile(e,t){throw Error(`Not supported!`)}compileAG(e,t,n,r){throw Error(`Not supported!`)}},Ue=class extends k{_match;captures;_cachedCompiledPatterns;constructor(e,t,n,r,i){super(e,t,n,null),this._match=new A(r,this.id),this.captures=i,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&=(this._cachedCompiledPatterns.dispose(),null)}get debugMatchRegExp(){return`${this._match.source}`}collectPatterns(e,t){t.push(this._match)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,n,r){return this._getCachedCompiledPatterns(e).compileAG(e,n,r)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new j,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},We=class extends k{hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,n,r,i){super(e,t,n,r),this.patterns=i.patterns,this.hasMissingPatterns=i.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&=(this._cachedCompiledPatterns.dispose(),null)}collectPatterns(e,t){for(let n of this.patterns)e.getRule(n).collectPatterns(e,t)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,n,r){return this._getCachedCompiledPatterns(e).compileAG(e,n,r)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new j,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},Ge=class extends k{_begin;beginCaptures;_end;endHasBackReferences;endCaptures;applyEndPatternLast;hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,n,r,i,a,o,s,c,l){super(e,t,n,r),this._begin=new A(i,this.id),this.beginCaptures=a,this._end=new A(o||``,-1),this.endHasBackReferences=this._end.hasBackReferences,this.endCaptures=s,this.applyEndPatternLast=c||!1,this.patterns=l.patterns,this.hasMissingPatterns=l.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&=(this._cachedCompiledPatterns.dispose(),null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugEndRegExp(){return`${this._end.source}`}getEndWithResolvedBackReferences(e,t){return this._end.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e,t).compile(e)}compileAG(e,t,n,r){return this._getCachedCompiledPatterns(e,t).compileAG(e,n,r)}_getCachedCompiledPatterns(e,t){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new j;for(let t of this.patterns)e.getRule(t).collectPatterns(e,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,t):this._cachedCompiledPatterns.setSource(0,t)),this._cachedCompiledPatterns}},Ke=class extends k{_begin;beginCaptures;whileCaptures;_while;whileHasBackReferences;hasMissingPatterns;patterns;_cachedCompiledPatterns;_cachedCompiledWhilePatterns;constructor(e,t,n,r,i,a,o,s,c){super(e,t,n,r),this._begin=new A(i,this.id),this.beginCaptures=a,this.whileCaptures=s,this._while=new A(o,ze),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(),null),this._cachedCompiledWhilePatterns&&=(this._cachedCompiledWhilePatterns.dispose(),null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugWhileRegExp(){return`${this._while.source}`}getWhileWithResolvedBackReferences(e,t){return this._while.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,n,r){return this._getCachedCompiledPatterns(e).compileAG(e,n,r)}_getCachedCompiledPatterns(e){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new j;for(let t of this.patterns)e.getRule(t).collectPatterns(e,this._cachedCompiledPatterns)}return this._cachedCompiledPatterns}compileWhile(e,t){return this._getCachedCompiledWhilePatterns(e,t).compile(e)}compileWhileAG(e,t,n,r){return this._getCachedCompiledWhilePatterns(e,t).compileAG(e,n,r)}_getCachedCompiledWhilePatterns(e,t){return this._cachedCompiledWhilePatterns||(this._cachedCompiledWhilePatterns=new j,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,t||``),this._cachedCompiledWhilePatterns}},qe=class e{static createCaptureRule(e,t,n,r,i){return e.registerRule(e=>new He(t,e,n,r,i))}static getCompiledRuleId(t,n,r){return t.id||n.registerRule(i=>{if(t.id=i,t.match)return new Ue(t.$vscodeTextmateLocation,t.id,t.name,t.match,e._compileCaptures(t.captures,n,r));if(t.begin===void 0){t.repository&&(r=x({},r,t.repository));let i=t.patterns;return i===void 0&&t.include&&(i=[{include:t.include}]),new We(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,e._compilePatterns(i,n,r))}return t.while?new Ke(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,e._compileCaptures(t.beginCaptures||t.captures,n,r),t.while,e._compileCaptures(t.whileCaptures||t.captures,n,r),e._compilePatterns(t.patterns,n,r)):new Ge(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,e._compileCaptures(t.beginCaptures||t.captures,n,r),t.end,e._compileCaptures(t.endCaptures||t.captures,n,r),t.applyEndPatternLast,e._compilePatterns(t.patterns,n,r))}),t.id}static _compileCaptures(t,n,r){let i=[];if(t){let a=0;for(let e in t){if(e===`$vscodeTextmateLocation`)continue;let t=parseInt(e,10);t>a&&(a=t)}for(let e=0;e<=a;e++)i[e]=null;for(let a in t){if(a===`$vscodeTextmateLocation`)continue;let o=parseInt(a,10),s=0;t[a].patterns&&(s=e.getCompiledRuleId(t[a],n,r)),i[o]=e.createCaptureRule(n,t[a].$vscodeTextmateLocation,t[a].name,t[a].contentName,s)}}return i}static _compilePatterns(t,n,r){let i=[];if(t)for(let a=0,o=t.length;a<o;a++){let o=t[a],s=-1;if(o.include){let t=Fe(o.include);switch(t.kind){case 0:case 1:s=e.getCompiledRuleId(r[o.include],n,r);break;case 2:let i=r[t.ruleName];i&&(s=e.getCompiledRuleId(i,n,r));break;case 3:case 4:let a=t.scopeName,c=t.kind===4?t.ruleName:null,l=n.getExternalGrammar(a,r);if(l)if(c){let t=l.repository[c];t&&(s=e.getCompiledRuleId(t,n,l.repository))}else s=e.getCompiledRuleId(l.repository.$self,n,l.repository);break}}else s=e.getCompiledRuleId(o,n,r);if(s!==-1){let e=n.getRule(s),t=!1;if((e instanceof We||e instanceof Ge||e instanceof Ke)&&e.hasMissingPatterns&&e.patterns.length===0&&(t=!0),t)continue;i.push(s)}}return{patterns:i,hasMissingPatterns:(t?t.length:0)!==i.length}}},A=class e{source;ruleId;hasAnchor;hasBackReferences;_anchorCache;constructor(e,t){if(e&&typeof e==`string`){let t=e.length,n=0,r=[],i=!1;for(let a=0;a<t;a++)if(e.charAt(a)===`\\`&&a+1<t){let t=e.charAt(a+1);t===`z`?(r.push(e.substring(n,a)),r.push(`$(?!\\n)(?<!\\n)`),n=a+2):(t===`A`||t===`G`)&&(i=!0),a++}this.hasAnchor=i,n===0?this.source=e:(r.push(e.substring(n,t)),this.source=r.join(``))}else this.hasAnchor=!1,this.source=e;this.hasAnchor?this._anchorCache=this._buildAnchorCache():this._anchorCache=null,this.ruleId=t,typeof this.source==`string`?this.hasBackReferences=Ie.test(this.source):this.hasBackReferences=!1}clone(){return new e(this.source,this.ruleId)}setSource(e){this.source!==e&&(this.source=e,this.hasAnchor&&(this._anchorCache=this._buildAnchorCache()))}resolveBackReferences(e,t){if(typeof this.source!=`string`)throw Error(`This method should only be called if the source is a string`);let n=t.map(t=>e.substring(t.start,t.end));return Le.lastIndex=0,this.source.replace(Le,(e,t)=>ie(n[parseInt(t,10)]||``))}_buildAnchorCache(){if(typeof this.source!=`string`)throw Error(`This method should only be called if the source is a string`);let e=[],t=[],n=[],r=[],i,a,o,s;for(i=0,a=this.source.length;i<a;i++)o=this.source.charAt(i),e[i]=o,t[i]=o,n[i]=o,r[i]=o,o===`\\`&&i+1<a&&(s=this.source.charAt(i+1),s===`A`?(e[i+1]=``,t[i+1]=``,n[i+1]=`A`,r[i+1]=`A`):s===`G`?(e[i+1]=``,t[i+1]=`G`,n[i+1]=``,r[i+1]=`G`):(e[i+1]=s,t[i+1]=s,n[i+1]=s,r[i+1]=s),i++);return{A0_G0:e.join(``),A0_G1:t.join(``),A1_G0:n.join(``),A1_G1:r.join(``)}}resolveAnchors(e,t){return!this.hasAnchor||!this._anchorCache||typeof this.source!=`string`?this.source:e?t?this._anchorCache.A1_G1:this._anchorCache.A1_G0:t?this._anchorCache.A0_G1:this._anchorCache.A0_G0}},j=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(),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(e){this._items.push(e),this._hasAnchors=this._hasAnchors||e.hasAnchor}unshift(e){this._items.unshift(e),this._hasAnchors=this._hasAnchors||e.hasAnchor}length(){return this._items.length}setSource(e,t){this._items[e].source!==t&&(this._disposeCaches(),this._items[e].setSource(t))}compile(e){return this._cached||=new Je(e,this._items.map(e=>e.source),this._items.map(e=>e.ruleId)),this._cached}compileAG(e,t,n){return this._hasAnchors?t?n?(this._anchorCache.A1_G1||(this._anchorCache.A1_G1=this._resolveAnchors(e,t,n)),this._anchorCache.A1_G1):(this._anchorCache.A1_G0||(this._anchorCache.A1_G0=this._resolveAnchors(e,t,n)),this._anchorCache.A1_G0):n?(this._anchorCache.A0_G1||(this._anchorCache.A0_G1=this._resolveAnchors(e,t,n)),this._anchorCache.A0_G1):(this._anchorCache.A0_G0||(this._anchorCache.A0_G0=this._resolveAnchors(e,t,n)),this._anchorCache.A0_G0):this.compile(e)}_resolveAnchors(e,t,n){return new Je(e,this._items.map(e=>e.resolveAnchors(t,n)),this._items.map(e=>e.ruleId))}},Je=class{constructor(e,t,n){this.regExps=t,this.rules=n,this.scanner=e.createOnigScanner(t)}scanner;dispose(){typeof this.scanner.dispose==`function`&&this.scanner.dispose()}toString(){let e=[];for(let t=0,n=this.rules.length;t<n;t++)e.push(` - `+this.rules[t]+`: `+this.regExps[t]);return e.join(`
|
||
`)}findNextMatchSync(e,t,n){let r=this.scanner.findNextMatchSync(e,t,n);return r?{ruleId:this.rules[r.index],captureIndices:r.captureIndices}:null}},Ye=class{constructor(e,t){this.languageId=e,this.tokenType=t}},Xe=class e{_defaultAttributes;_embeddedLanguagesMatcher;constructor(e,t){this._defaultAttributes=new Ye(e,8),this._embeddedLanguagesMatcher=new Ze(Object.entries(t||{}))}getDefaultAttributes(){return this._defaultAttributes}getBasicScopeAttributes(t){return t===null?e._NULL_SCOPE_METADATA:this._getBasicScopeAttributes.get(t)}static _NULL_SCOPE_METADATA=new Ye(0,0);_getBasicScopeAttributes=new ae(e=>new Ye(this._scopeToLanguage(e),this._toStandardTokenType(e)));_scopeToLanguage(e){return this._embeddedLanguagesMatcher.match(e)||0}_toStandardTokenType(t){let n=t.match(e.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 Error(`Unexpected match for standard token type!`)}static STANDARD_TOKEN_TYPE_REGEXP=/\b(comment|string|regex|meta\.embedded)\b/},Ze=class{values;scopesRegExp;constructor(e){if(e.length===0)this.values=null,this.scopesRegExp=null;else{this.values=new Map(e);let t=e.map(([e,t])=>ie(e));t.sort(),t.reverse(),this.scopesRegExp=RegExp(`^((${t.join(`)|(`)}))($|\\.)`,``)}}match(e){if(!this.scopesRegExp)return;let t=e.match(this.scopesRegExp);if(t)return this.values.get(t[1])}};typeof process<`u`&&{}.VSCODE_TEXTMATE_DEBUG;var Qe=!1,$e=class{constructor(e,t){this.stack=e,this.stoppedEarly=t}};function et(e,t,n,r,i,a,o,s){let c=t.content.length,l=!1,u=-1;if(o){let o=tt(e,t,n,r,i,a);i=o.stack,r=o.linePos,n=o.isFirstLine,u=o.anchorPosition}let d=Date.now();for(;!l;){if(s!==0&&Date.now()-d>s)return new $e(i,!0);f()}return new $e(i,!1);function f(){let o=nt(e,t,n,r,i,u);if(!o){a.produce(i,c),l=!0;return}let s=o.captureIndices,d=o.matchedRuleId,f=s&&s.length>0?s[0].end>r:!1;if(d===Re){let o=i.getRule(e);a.produce(i,s[0].start),i=i.withContentNameScopesList(i.nameScopesList),M(e,t,n,i,a,o.endCaptures,s),a.produce(i,s[0].end);let d=i;if(i=i.parent,u=d.getAnchorPos(),!f&&d.getEnterPos()===r){i=d,a.produce(i,c),l=!0;return}}else{let o=e.getRule(d);a.produce(i,s[0].start);let p=i,m=o.getName(t.content,s),h=i.contentNameScopesList.pushAttributed(m,e);if(i=i.push(d,r,u,s[0].end===c,null,h,h),o instanceof Ge){let r=o;M(e,t,n,i,a,r.beginCaptures,s),a.produce(i,s[0].end),u=s[0].end;let d=r.getContentName(t.content,s),m=h.pushAttributed(d,e);if(i=i.withContentNameScopesList(m),r.endHasBackReferences&&(i=i.withEndRule(r.getEndWithResolvedBackReferences(t.content,s))),!f&&p.hasSameRuleAs(i)){i=i.pop(),a.produce(i,c),l=!0;return}}else if(o instanceof Ke){let r=o;M(e,t,n,i,a,r.beginCaptures,s),a.produce(i,s[0].end),u=s[0].end;let d=r.getContentName(t.content,s),m=h.pushAttributed(d,e);if(i=i.withContentNameScopesList(m),r.whileHasBackReferences&&(i=i.withEndRule(r.getWhileWithResolvedBackReferences(t.content,s))),!f&&p.hasSameRuleAs(i)){i=i.pop(),a.produce(i,c),l=!0;return}}else if(M(e,t,n,i,a,o.captures,s),a.produce(i,s[0].end),i=i.pop(),!f){i=i.safePop(),a.produce(i,c),l=!0;return}}s[0].end>r&&(r=s[0].end,n=!1)}}function tt(e,t,n,r,i,a){let o=i.beginRuleCapturedEOL?0:-1,s=[];for(let t=i;t;t=t.pop()){let n=t.getRule(e);n instanceof Ke&&s.push({rule:n,stack:t})}for(let c=s.pop();c;c=s.pop()){let{ruleScanner:s,findOptions:l}=ot(c.rule,e,c.stack.endRule,n,r===o),u=s.findNextMatchSync(t,r,l);if(u){if(u.ruleId!==ze){i=c.stack.pop();break}u.captureIndices&&u.captureIndices.length&&(a.produce(c.stack,u.captureIndices[0].start),M(e,t,n,c.stack,a,c.rule.whileCaptures,u.captureIndices),a.produce(c.stack,u.captureIndices[0].end),o=u.captureIndices[0].end,u.captureIndices[0].end>r&&(r=u.captureIndices[0].end,n=!1))}else{i=c.stack.pop();break}}return{stack:i,linePos:r,anchorPosition:o,isFirstLine:n}}function nt(e,t,n,r,i,a){let o=rt(e,t,n,r,i,a),s=e.getInjections();if(s.length===0)return o;let c=it(s,e,t,n,r,i,a);if(!c)return o;if(!o)return c;let l=o.captureIndices[0].start,u=c.captureIndices[0].start;return u<l||c.priorityMatch&&u===l?c:o}function rt(e,t,n,r,i,a){let{ruleScanner:o,findOptions:s}=at(i.getRule(e),e,i.endRule,n,r===a),c=o.findNextMatchSync(t,r,s);return c?{captureIndices:c.captureIndices,matchedRuleId:c.ruleId}:null}function it(e,t,n,r,i,a,o){let s=Number.MAX_VALUE,c=null,l,u=0,d=a.contentNameScopesList.getScopeNames();for(let a=0,f=e.length;a<f;a++){let f=e[a];if(!f.matcher(d))continue;let{ruleScanner:p,findOptions:m}=at(t.getRule(f.ruleId),t,null,r,i===o),h=p.findNextMatchSync(n,i,m);if(!h)continue;let g=h.captureIndices[0].start;if(!(g>=s)&&(s=g,c=h.captureIndices,l=h.ruleId,u=f.priority,s===i))break}return c?{priorityMatch:u===-1,captureIndices:c,matchedRuleId:l}:null}function at(e,t,n,r,i){return Qe?{ruleScanner:e.compile(t,n),findOptions:st(r,i)}:{ruleScanner:e.compileAG(t,n,r,i),findOptions:0}}function ot(e,t,n,r,i){return Qe?{ruleScanner:e.compileWhile(t,n),findOptions:st(r,i)}:{ruleScanner:e.compileWhileAG(t,n,r,i),findOptions:0}}function st(e,t){let n=0;return e||(n|=1),t||(n|=4),n}function M(e,t,n,r,i,a,o){if(a.length===0)return;let s=t.content,c=Math.min(a.length,o.length),l=[],u=o[0].end;for(let t=0;t<c;t++){let c=a[t];if(c===null)continue;let d=o[t];if(d.length===0)continue;if(d.start>u)break;for(;l.length>0&&l[l.length-1].endPos<=d.start;)i.produceFromScopes(l[l.length-1].scopes,l[l.length-1].endPos),l.pop();if(l.length>0?i.produceFromScopes(l[l.length-1].scopes,d.start):i.produce(r,d.start),c.retokenizeCapturedWithRuleId){let t=c.getName(s,o),a=r.contentNameScopesList.pushAttributed(t,e),l=c.getContentName(s,o),u=a.pushAttributed(l,e),f=r.push(c.retokenizeCapturedWithRuleId,d.start,-1,!1,null,a,u),p=e.createOnigString(s.substring(0,d.end));et(e,p,n&&d.start===0,d.start,f,i,!1,0),Ce(p);continue}let f=c.getName(s,o);if(f!==null){let t=(l.length>0?l[l.length-1].scopes:r.contentNameScopesList).pushAttributed(f,e);l.push(new ct(t,d.end))}}for(;l.length>0;)i.produceFromScopes(l[l.length-1].scopes,l[l.length-1].endPos),l.pop()}var ct=class{scopes;endPos;constructor(e,t){this.scopes=e,this.endPos=t}};function lt(e,t,n,r,i,a,o,s){return new pt(e,t,n,r,i,a,o,s)}function ut(e,t,n,r,i){let a=be(t,dt),o=qe.getCompiledRuleId(n,r,i.repository);for(let n of a)e.push({debugSelector:t,matcher:n.matcher,ruleId:o,grammar:i,priority:n.priority})}function dt(e,t){if(t.length<e.length)return!1;let n=0;return e.every(e=>{for(let r=n;r<t.length;r++)if(ft(t[r],e))return n=r+1,!0;return!1})}function ft(e,t){if(!e)return!1;if(e===t)return!0;let n=t.length;return e.length>n&&e.substr(0,n)===t&&e[n]===`.`}var pt=class{constructor(e,t,n,r,i,a,o,s){if(this._rootScopeName=e,this.balancedBracketSelectors=a,this._onigLib=s,this._basicScopeAttributesProvider=new Xe(n,r),this._rootId=-1,this._lastRuleId=0,this._ruleId2desc=[null],this._includedGrammars={},this._grammarRepository=o,this._grammar=mt(t,null),this._injections=null,this._tokenTypeMatchers=[],i)for(let e of Object.keys(i)){let t=be(e,dt);for(let n of t)this._tokenTypeMatchers.push({matcher:n.matcher,type:i[e]})}}_rootId;_lastRuleId;_ruleId2desc;_includedGrammars;_grammarRepository;_grammar;_injections;_basicScopeAttributesProvider;_tokenTypeMatchers;get themeProvider(){return this._grammarRepository}dispose(){for(let e of this._ruleId2desc)e&&e.dispose()}createOnigScanner(e){return this._onigLib.createOnigScanner(e)}createOnigString(e){return this._onigLib.createOnigString(e)}getMetadataForScope(e){return this._basicScopeAttributesProvider.getBasicScopeAttributes(e)}_collectInjections(){let e={lookup:e=>e===this._rootScopeName?this._grammar:this.getExternalGrammar(e),injections:e=>this._grammarRepository.injections(e)},t=[],n=this._rootScopeName,r=e.lookup(n);if(r){let e=r.injections;if(e)for(let n in e)ut(t,n,e[n],this,r);let i=this._grammarRepository.injections(n);i&&i.forEach(e=>{let n=this.getExternalGrammar(e);if(n){let e=n.injectionSelector;e&&ut(t,e,n,this,n)}})}return t.sort((e,t)=>e.priority-t.priority),t}getInjections(){return this._injections===null&&(this._injections=this._collectInjections()),this._injections}registerRule(e){let t=++this._lastRuleId,n=e(Be(t));return this._ruleId2desc[t]=n,n}getRule(e){return this._ruleId2desc[Ve(e)]}getExternalGrammar(e,t){if(this._includedGrammars[e])return this._includedGrammars[e];if(this._grammarRepository){let n=this._grammarRepository.lookup(e);if(n)return this._includedGrammars[e]=mt(n,t&&t.$base),this._includedGrammars[e]}}tokenizeLine(e,t,n=0){let r=this._tokenize(e,t,!1,n);return{tokens:r.lineTokens.getResult(r.ruleStack,r.lineLength),ruleStack:r.ruleStack,stoppedEarly:r.stoppedEarly}}tokenizeLine2(e,t,n=0){let r=this._tokenize(e,t,!0,n);return{tokens:r.lineTokens.getBinaryResult(r.ruleStack,r.lineLength),ruleStack:r.ruleStack,stoppedEarly:r.stoppedEarly}}_tokenize(e,t,n,r){this._rootId===-1&&(this._rootId=qe.getCompiledRuleId(this._grammar.repository.$self,this,this._grammar.repository),this.getInjections());let i;if(!t||t===ht.NULL){i=!0;let e=this._basicScopeAttributesProvider.getDefaultAttributes(),n=this.themeProvider.getDefaults(),r=E.set(0,e.languageId,e.tokenType,null,n.fontStyle,n.foregroundId,n.backgroundId),a=this.getRule(this._rootId).getName(null,null),o;o=a?N.createRootAndLookUpScopeName(a,r,this):N.createRoot(`unknown`,r),t=new ht(null,this._rootId,-1,-1,!1,null,o,o)}else i=!1,t.reset();e+=`
|
||
`;let a=this.createOnigString(e),o=a.content.length,s=new _t(n,e,this._tokenTypeMatchers,this.balancedBracketSelectors),c=et(this,a,i,0,t,s,!0,r);return Ce(a),{lineLength:o,lineTokens:s,ruleStack:c.stack,stoppedEarly:c.stoppedEarly}}};function mt(e,t){return e=v(e),e.repository=e.repository||{},e.repository.$self={$vscodeTextmateLocation:e.$vscodeTextmateLocation,patterns:e.patterns,name:e.scopeName},e.repository.$base=t||e.repository.$self,e}var N=class e{constructor(e,t,n){this.parent=e,this.scopePath=t,this.tokenAttributes=n}static fromExtension(t,n){let r=t,i=t?.scopePath??null;for(let t of n)i=se.push(i,t.scopeNames),r=new e(r,i,t.encodedTokenAttributes);return r}static createRoot(t,n){return new e(null,new se(null,t),n)}static createRootAndLookUpScopeName(t,n,r){let i=r.getMetadataForScope(t),a=new se(null,t),o=r.themeProvider.themeMatch(a);return new e(null,a,e.mergeAttributes(n,i,o))}get scopeName(){return this.scopePath.scopeName}toString(){return this.getScopeNames().join(` `)}equals(t){return e.equals(this,t)}static equals(e,t){do{if(e===t||!e&&!t)return!0;if(!e||!t||e.scopeName!==t.scopeName||e.tokenAttributes!==t.tokenAttributes)return!1;e=e.parent,t=t.parent}while(!0)}static mergeAttributes(e,t,n){let r=-1,i=0,a=0;return n!==null&&(r=n.fontStyle,i=n.foregroundId,a=n.backgroundId),E.set(e,t.languageId,t.tokenType,null,r,i,a)}pushAttributed(t,n){if(t===null)return this;if(t.indexOf(` `)===-1)return e._pushAttributed(this,t,n);let r=t.split(/ /g),i=this;for(let t of r)i=e._pushAttributed(i,t,n);return i}static _pushAttributed(t,n,r){let i=r.getMetadataForScope(n),a=t.scopePath.push(n),o=r.themeProvider.themeMatch(a);return new e(t,a,e.mergeAttributes(t.tokenAttributes,i,o))}getScopeNames(){return this.scopePath.getSegments()}getExtensionIfDefined(e){let t=[],n=this;for(;n&&n!==e;)t.push({encodedTokenAttributes:n.tokenAttributes,scopeNames:n.scopePath.getExtensionIfDefined(n.parent?.scopePath??null)}),n=n.parent;return n===e?t.reverse():void 0}},ht=class e{constructor(e,t,n,r,i,a,o,s){this.parent=e,this.ruleId=t,this.beginRuleCapturedEOL=i,this.endRule=a,this.nameScopesList=o,this.contentNameScopesList=s,this.depth=this.parent?this.parent.depth+1:1,this._enterPos=n,this._anchorPos=r}_stackElementBrand=void 0;static NULL=new e(null,0,0,0,!1,null,null,null);_enterPos;_anchorPos;depth;equals(t){return t===null?!1:e._equals(this,t)}static _equals(e,t){return e===t?!0:this._structuralEquals(e,t)?N.equals(e.contentNameScopesList,t.contentNameScopesList):!1}static _structuralEquals(e,t){do{if(e===t||!e&&!t)return!0;if(!e||!t||e.depth!==t.depth||e.ruleId!==t.ruleId||e.endRule!==t.endRule)return!1;e=e.parent,t=t.parent}while(!0)}clone(){return this}static _reset(e){for(;e;)e._enterPos=-1,e._anchorPos=-1,e=e.parent}reset(){e._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(t,n,r,i,a,o,s){return new e(this,t,n,r,i,a,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,t){return this.parent&&(t=this.parent._writeString(e,t)),e[t++]=`(${this.ruleId}, ${this.nameScopesList?.toString()}, ${this.contentNameScopesList?.toString()})`,t}withContentNameScopesList(e){return this.contentNameScopesList===e?this:this.parent.push(this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,this.endRule,this.nameScopesList,e)}withEndRule(t){return this.endRule===t?this:new e(this.parent,this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,t,this.nameScopesList,this.contentNameScopesList)}hasSameRuleAs(e){let t=this;for(;t&&t._enterPos===e._enterPos;){if(t.ruleId===e.ruleId)return!0;t=t.parent}return!1}toStateStackFrame(){return{ruleId:Ve(this.ruleId),beginRuleCapturedEOL:this.beginRuleCapturedEOL,endRule:this.endRule,nameScopesList:this.nameScopesList?.getExtensionIfDefined(this.parent?.nameScopesList??null)??[],contentNameScopesList:this.contentNameScopesList?.getExtensionIfDefined(this.nameScopesList)??[]}}static pushFrame(t,n){let r=N.fromExtension(t?.nameScopesList??null,n.nameScopesList);return new e(t,Be(n.ruleId),n.enterPos??-1,n.anchorPos??-1,n.beginRuleCapturedEOL,n.endRule,r,N.fromExtension(r,n.contentNameScopesList))}},gt=class{balancedBracketScopes;unbalancedBracketScopes;allowAny=!1;constructor(e,t){this.balancedBracketScopes=e.flatMap(e=>e===`*`?(this.allowAny=!0,[]):be(e,dt).map(e=>e.matcher)),this.unbalancedBracketScopes=t.flatMap(e=>be(e,dt).map(e=>e.matcher))}get matchesAlways(){return this.allowAny&&this.unbalancedBracketScopes.length===0}get matchesNever(){return this.balancedBracketScopes.length===0&&!this.allowAny}match(e){for(let t of this.unbalancedBracketScopes)if(t(e))return!1;for(let t of this.balancedBracketScopes)if(t(e))return!0;return this.allowAny}},_t=class{constructor(e,t,n,r){this.balancedBracketSelectors=r,this._emitBinaryTokens=e,this._tokenTypeOverrides=n,this._lineText=null,this._tokens=[],this._binaryTokens=[],this._lastTokenEndIndex=0}_emitBinaryTokens;_lineText;_tokens;_binaryTokens;_lastTokenEndIndex;_tokenTypeOverrides;produce(e,t){this.produceFromScopes(e.contentNameScopesList,t)}produceFromScopes(e,t){if(this._lastTokenEndIndex>=t)return;if(this._emitBinaryTokens){let n=e?.tokenAttributes??0,r=!1;if(this.balancedBracketSelectors?.matchesAlways&&(r=!0),this._tokenTypeOverrides.length>0||this.balancedBracketSelectors&&!this.balancedBracketSelectors.matchesAlways&&!this.balancedBracketSelectors.matchesNever){let t=e?.getScopeNames()??[];for(let e of this._tokenTypeOverrides)e.matcher(t)&&(n=E.set(n,0,ve(e.type),null,-1,0,0));this.balancedBracketSelectors&&(r=this.balancedBracketSelectors.match(t))}if(r&&(n=E.set(n,0,8,r,-1,0,0)),this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-1]===n){this._lastTokenEndIndex=t;return}this._binaryTokens.push(this._lastTokenEndIndex),this._binaryTokens.push(n),this._lastTokenEndIndex=t;return}let n=e?.getScopeNames()??[];this._tokens.push({startIndex:this._lastTokenEndIndex,endIndex:t,scopes:n}),this._lastTokenEndIndex=t}getResult(e,t){return this._tokens.length>0&&this._tokens[this._tokens.length-1].startIndex===t-1&&this._tokens.pop(),this._tokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._tokens[this._tokens.length-1].startIndex=0),this._tokens}getBinaryResult(e,t){this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-2]===t-1&&(this._binaryTokens.pop(),this._binaryTokens.pop()),this._binaryTokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._binaryTokens[this._binaryTokens.length-2]=0);let n=new Uint32Array(this._binaryTokens.length);for(let e=0,t=this._binaryTokens.length;e<t;e++)n[e]=this._binaryTokens[e];return n}},vt=class{constructor(e,t){this._onigLib=t,this._theme=e}_grammars=new Map;_rawGrammars=new Map;_injectionGrammars=new Map;_theme;dispose(){for(let e of this._grammars.values())e.dispose()}setTheme(e){this._theme=e}getColorMap(){return this._theme.getColorMap()}addGrammar(e,t){this._rawGrammars.set(e.scopeName,e),t&&this._injectionGrammars.set(e.scopeName,t)}lookup(e){return this._rawGrammars.get(e)}injections(e){return this._injectionGrammars.get(e)}getDefaults(){return this._theme.getDefaults()}themeMatch(e){return this._theme.match(e)}grammarForScopeName(e,t,n,r,i){if(!this._grammars.has(e)){let a=this._rawGrammars.get(e);if(!a)return null;this._grammars.set(e,lt(e,a,t,n,r,i,this,this._onigLib))}return this._grammars.get(e)}},yt=class{_options;_syncRegistry;_ensureGrammarCache;constructor(e){this._options=e,this._syncRegistry=new vt(oe.createFromRawTheme(e.theme,e.colorMap),e.onigLib),this._ensureGrammarCache=new Map}dispose(){this._syncRegistry.dispose()}setTheme(e,t){this._syncRegistry.setTheme(oe.createFromRawTheme(e,t))}getColorMap(){return this._syncRegistry.getColorMap()}loadGrammarWithEmbeddedLanguages(e,t,n){return this.loadGrammarWithConfiguration(e,t,{embeddedLanguages:n})}loadGrammarWithConfiguration(e,t,n){return this._loadGrammar(e,t,n.embeddedLanguages,n.tokenTypes,new gt(n.balancedBracketSelectors||[],n.unbalancedBracketSelectors||[]))}loadGrammar(e){return this._loadGrammar(e,0,null,null,null)}_loadGrammar(e,t,n,r,i){let a=new Ee(this._syncRegistry,e);for(;a.Q.length>0;)a.Q.map(e=>this._loadSingleGrammar(e.scopeName)),a.processQueue();return this._grammarForScopeName(e,t,n,r,i)}_loadSingleGrammar(e){this._ensureGrammarCache.has(e)||(this._doLoadSingleGrammar(e),this._ensureGrammarCache.set(e,!0))}_doLoadSingleGrammar(e){let t=this._options.loadGrammar(e);if(t){let n=typeof this._options.getInjections==`function`?this._options.getInjections(e):void 0;this._syncRegistry.addGrammar(t,n)}}addGrammar(e,t=[],n=0,r=null){return this._syncRegistry.addGrammar(e,t),this._grammarForScopeName(e.scopeName,n,r)}_grammarForScopeName(e,t=0,n=null,r=null,i=null){return this._syncRegistry.grammarForScopeName(e,t,n,r,i)}},bt=ht.NULL;function xt(e,t){let n=typeof e==`string`?{}:{...e.colorReplacements},r=typeof e==`string`?e:e.name;for(let[e,i]of Object.entries(t?.colorReplacements||{}))typeof i==`string`?n[e]=i:e===r&&Object.assign(n,i);return n}function P(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function St(e){return Array.isArray(e)?e:[e]}async function Ct(e){return Promise.resolve(typeof e==`function`?e():e).then(e=>e.default||e)}function wt(e){return!e||[`plaintext`,`txt`,`text`,`plain`].includes(e)}function Tt(e){return e===`ansi`||wt(e)}function Et(e){return e===`none`}function Dt(e){return Et(e)}function Ot(e,t=!1){if(e.length===0)return[[``,0]];let n=e.split(/(\r?\n)/g),r=0,i=[];for(let e=0;e<n.length;e+=2){let a=t?n[e]+(n[e+1]||``):n[e];i.push([a,r]),r+=n[e].length,r+=n[e+1]?.length||0}return i}var kt={light:`#333333`,dark:`#bbbbbb`},At={light:`#fffffe`,dark:`#1e1e1e`},jt=`__shiki_resolved`;function Mt(e){if(e?.[jt])return e;let t={...e};t.tokenColors&&!t.settings&&(t.settings=t.tokenColors,delete t.tokenColors),t.type||=`dark`,t.colorReplacements={...t.colorReplacements},t.settings||=[];let{bg:n,fg:r}=t;if(!n||!r){let e=t.settings?t.settings.find(e=>!e.name&&!e.scope):void 0;e?.settings?.foreground&&(r=e.settings.foreground),e?.settings?.background&&(n=e.settings.background),!r&&t?.colors?.[`editor.foreground`]&&(r=t.colors[`editor.foreground`]),!n&&t?.colors?.[`editor.background`]&&(n=t.colors[`editor.background`]),r||=t.type===`light`?kt.light:kt.dark,n||=t.type===`light`?At.light:At.dark,t.fg=r,t.bg=n}t.settings[0]&&t.settings[0].settings&&!t.settings[0].scope||t.settings.unshift({settings:{foreground:t.fg,background:t.bg}});let i=0,a=new Map;function o(e){if(a.has(e))return a.get(e);i+=1;let n=`#${i.toString(16).padStart(8,`0`).toLowerCase()}`;return t.colorReplacements?.[`#${n}`]?o(e):(a.set(e,n),n)}t.settings=t.settings.map(e=>{let n=e.settings?.foreground&&!e.settings.foreground.startsWith(`#`),r=e.settings?.background&&!e.settings.background.startsWith(`#`);if(!n&&!r)return e;let i={...e,settings:{...e.settings}};if(n){let n=o(e.settings.foreground);t.colorReplacements[n]=e.settings.foreground,i.settings.foreground=n}if(r){let n=o(e.settings.background);t.colorReplacements[n]=e.settings.background,i.settings.background=n}return i});for(let e of Object.keys(t.colors||{}))if((e===`editor.foreground`||e===`editor.background`||e.startsWith(`terminal.ansi`))&&!t.colors[e]?.startsWith(`#`)){let n=o(t.colors[e]);t.colorReplacements[n]=t.colors[e],t.colors[e]=n}return Object.defineProperty(t,jt,{enumerable:!1,writable:!1,value:!0}),t}async function Nt(e){return Array.from(new Set((await Promise.all(e.filter(e=>!Tt(e)).map(async e=>await Ct(e).then(e=>Array.isArray(e)?e:[e])))).flat()))}async function Pt(e){return(await Promise.all(e.map(async e=>Dt(e)?null:Mt(await Ct(e))))).filter(e=>!!e)}function Ft(e,t){if(!t)return e;if(t[e]){let n=new Set([e]);for(;t[e];){if(e=t[e],n.has(e))throw new _(`Circular alias \`${Array.from(n).join(` -> `)} -> ${e}\``);n.add(e)}}return e}var It=class extends yt{_resolvedThemes=new Map;_resolvedGrammars=new Map;_langMap=new Map;_langGraph=new Map;_textmateThemeCache=new WeakMap;_loadedThemesCache=null;_loadedLanguagesCache=null;constructor(e,t,n,r={}){super(e),this._resolver=e,this._themes=t,this._langs=n,this._alias=r,this._themes.map(e=>this.loadTheme(e)),this.loadLanguages(this._langs)}getTheme(e){return typeof e==`string`?this._resolvedThemes.get(e):this.loadTheme(e)}loadTheme(e){let t=Mt(e);return t.name&&(this._resolvedThemes.set(t.name,t),this._loadedThemesCache=null),t}getLoadedThemes(){return this._loadedThemesCache||=[...this._resolvedThemes.keys()],this._loadedThemesCache}setTheme(e){let t=this._textmateThemeCache.get(e);t||(t=oe.createFromRawTheme(e),this._textmateThemeCache.set(e,t)),this._syncRegistry.setTheme(t)}getGrammar(e){return e=Ft(e,this._alias),this._resolvedGrammars.get(e)}loadLanguage(e){if(this.getGrammar(e.name))return;let t=new Set([...this._langMap.values()].filter(t=>t.embeddedLangsLazy?.includes(e.name)));this._resolver.addLanguage(e);let n={balancedBracketSelectors:e.balancedBracketSelectors||[`*`],unbalancedBracketSelectors:e.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(e.scopeName,e);let r=this.loadGrammarWithConfiguration(e.scopeName,1,n);if(r.name=e.name,this._resolvedGrammars.set(e.name,r),e.aliases&&e.aliases.forEach(t=>{this._alias[t]=e.name}),this._loadedLanguagesCache=null,t.size)for(let e of t)this._resolvedGrammars.delete(e.name),this._loadedLanguagesCache=null,this._syncRegistry?._injectionGrammars?.delete(e.scopeName),this._syncRegistry?._grammars?.delete(e.scopeName),this.loadLanguage(this._langMap.get(e.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(e){for(let t of e)this.resolveEmbeddedLanguages(t);let t=Array.from(this._langGraph.entries()),n=t.filter(([e,t])=>!t);if(n.length){let e=t.filter(([e,t])=>t?(t.embeddedLanguages||t.embeddedLangs)?.some(e=>n.map(([e])=>e).includes(e)):!1).filter(e=>!n.includes(e));throw new _(`Missing languages ${n.map(([e])=>`\`${e}\``).join(`, `)}, required by ${e.map(([e])=>`\`${e}\``).join(`, `)}`)}for(let[e,n]of t)this._resolver.addLanguage(n);for(let[e,n]of t)this.loadLanguage(n)}getLoadedLanguages(){return this._loadedLanguagesCache||=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])],this._loadedLanguagesCache}resolveEmbeddedLanguages(e){this._langMap.set(e.name,e),this._langGraph.set(e.name,e);let t=e.embeddedLanguages??e.embeddedLangs;if(t)for(let e of t)this._langGraph.set(e,this._langMap.get(e))}},Lt=class{_langs=new Map;_scopeToLang=new Map;_injections=new Map;_onigLib;constructor(e,t){this._onigLib={createOnigScanner:t=>e.createScanner(t),createOnigString:t=>e.createString(t)},t.forEach(e=>this.addLanguage(e))}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(t=>{this._langs.set(t,e)}),this._scopeToLang.set(e.scopeName,e),e.injectTo&&e.injectTo.forEach(t=>{this._injections.get(t)||this._injections.set(t,[]),this._injections.get(t).push(e.scopeName)})}getInjections(e){let t=e.split(`.`),n=[];for(let e=1;e<=t.length;e++){let r=t.slice(0,e).join(`.`);n=[...n,...this._injections.get(r)||[]]}return n}},F=0;function Rt(e){F+=1,e.warnings!==!1&&F>=10&&F%10==0&&console.warn(`[Shiki] ${F} 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 t=!1;if(!e.engine)throw new _("`engine` option is required for synchronous mode");let n=(e.langs||[]).flat(1),r=(e.themes||[]).flat(1).map(Mt),i=new It(new Lt(e.engine,n),r,n,e.langAlias),a;function o(t){return Ft(t,e.langAlias)}function s(e){g();let t=i.getGrammar(typeof e==`string`?e:e.name);if(!t)throw new _(`Language \`${e}\` not found, you may need to load it first`);return t}function c(e){if(e===`none`)return{bg:``,fg:``,name:`none`,settings:[],type:`dark`};g();let t=i.getTheme(e);if(!t)throw new _(`Theme \`${e}\` not found, you may need to load it first`);return t}function l(e){g();let t=c(e);return a!==e&&(i.setTheme(t),a=e),{theme:t,colorMap:i.getColorMap()}}function u(){return g(),i.getLoadedThemes()}function d(){return g(),i.getLoadedLanguages()}function f(...e){g(),i.loadLanguages(e.flat(1))}async function p(...e){return f(await Nt(e))}function m(...e){g();for(let t of e.flat(1))i.loadTheme(t)}async function h(...e){return g(),m(await Pt(e))}function g(){if(t)throw new _(`Shiki instance has been disposed`)}function v(){t||(t=!0,i.dispose(),--F)}return{setTheme:l,getTheme:c,getLanguage:s,getLoadedThemes:u,getLoadedLanguages:d,resolveLangAlias:o,loadLanguage:p,loadLanguageSync:f,loadTheme:h,loadThemeSync:m,dispose:v,[Symbol.dispose]:v}}async function zt(e){e.engine||console.warn("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");let[t,n,r]=await Promise.all([Pt(e.themes||[]),Nt(e.langs||[]),e.engine]);return Rt({...e,themes:t,langs:n,engine:r})}var Bt=new WeakMap;function I(e,t){Bt.set(e,t)}function L(e){return Bt.get(e)}var Vt=class e{_stacks={};lang;get themes(){return Object.keys(this._stacks)}get theme(){return this.themes[0]}get _stack(){return this._stacks[this.theme]}static initial(t,n){return new e(Object.fromEntries(St(n).map(e=>[e,bt])),t)}constructor(...e){if(e.length===2){let[t,n]=e;this.lang=n,this._stacks=t}else{let[t,n,r]=e;this.lang=n,this._stacks={[r]:t}}}getInternalStack(e=this.theme){return this._stacks[e]}getScopes(e=this.theme){return Ht(this._stacks[e])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}};function Ht(e){let t=[],n=new Set;function r(e){if(n.has(e))return;n.add(e);let i=e?.nameScopesList?.scopeName;i&&t.push(i),e.parent&&r(e.parent)}return r(e),t}function Ut(e,t){if(!(e instanceof Vt))throw new _(`Invalid grammar state`);return e.getInternalStack(t)}function Wt(e,t,n={}){let{theme:r=e.getLoadedThemes()[0]}=n;if(wt(e.resolveLangAlias(n.lang||`text`))||Et(r))return Ot(t).map(e=>[{content:e[0],offset:e[1]}]);let{theme:i,colorMap:a}=e.setTheme(r),o=e.getLanguage(n.lang||`text`);if(n.grammarState){if(n.grammarState.lang!==o.name)throw new _(`Grammar state language "${n.grammarState.lang}" does not match highlight language "${o.name}"`);if(!n.grammarState.themes.includes(i.name))throw new _(`Grammar state themes "${n.grammarState.themes}" do not contain highlight theme "${i.name}"`)}return Kt(t,o,i,a,n)}function Gt(...e){if(e.length===2)return L(e[1]);let[t,n,r={}]=e,{lang:i=`text`,theme:a=t.getLoadedThemes()[0]}=r;if(wt(i)||Et(a))throw new _(`Plain language does not have grammar state`);if(i===`ansi`)throw new _(`ANSI language does not have grammar state`);let{theme:o,colorMap:s}=t.setTheme(a),c=t.getLanguage(i);return new Vt(qt(n,c,o,s,r).stateStack,c.name,o.name)}function Kt(e,t,n,r,i){let a=qt(e,t,n,r,i),o=new Vt(a.stateStack,t.name,n.name);return I(a.tokens,o),a.tokens}function qt(e,t,n,r,i){let a=xt(n,i),{tokenizeMaxLineLength:o=0,tokenizeTimeLimit:s=500}=i,c=Ot(e),l=i.grammarState?Ut(i.grammarState,n.name)??bt:i.grammarContextCode==null?bt:qt(i.grammarContextCode,t,n,r,{...i,grammarState:void 0,grammarContextCode:void 0}).stateStack,u=[],d=[];for(let e=0,f=c.length;e<f;e++){let[f,p]=c[e];if(f===``){u=[],d.push([]);continue}if(o>0&&f.length>=o){u=[],d.push([{content:f,offset:p,color:``,fontStyle:0}]);continue}let m,h,g;i.includeExplanation&&(m=t.tokenizeLine(f,l,s),h=m.tokens,g=0);let _=t.tokenizeLine2(f,l,s),v=_.tokens.length/2;for(let e=0;e<v;e++){let t=_.tokens[2*e],o=e+1<v?_.tokens[2*e+2]:f.length;if(t===o)continue;let s=_.tokens[2*e+1],c=P(r[E.getForeground(s)],a),l=E.getFontStyle(s),d={content:f.substring(t,o),offset:p+t,color:c,fontStyle:l};if(i.includeExplanation){let e=[];if(i.includeExplanation!==`scopeName`)for(let t of n.settings){let n;switch(typeof t.scope){case`string`:n=t.scope.split(/,/).map(e=>e.trim());break;case`object`:n=t.scope;break;default:continue}e.push({settings:t,selectors:n.map(e=>e.split(/ /))})}d.explanation=[];let r=0;for(;t+r<o;){let t=h[g],n=f.substring(t.startIndex,t.endIndex);r+=n.length,d.explanation.push({content:n,scopes:i.includeExplanation===`scopeName`?Jt(t.scopes):Yt(e,t.scopes)}),g+=1}}u.push(d)}d.push(u),u=[],l=_.ruleStack}return{tokens:d,stateStack:l}}function Jt(e){return e.map(e=>({scopeName:e}))}function Yt(e,t){let n=[];for(let r=0,i=t.length;r<i;r++){let i=t[r];n[r]={scopeName:i,themeMatches:Qt(e,i,t.slice(0,r))}}return n}function Xt(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]===`.`}function Zt(e,t,n){if(!Xt(e[e.length-1],t))return!1;let r=e.length-2,i=n.length-1;for(;r>=0&&i>=0;)Xt(e[r],n[i])&&--r,--i;return r===-1}function Qt(e,t,n){let r=[];for(let{selectors:i,settings:a}of e)for(let e of i)if(Zt(e,t,n)){r.push(a);break}return r}function $t(e,t,n,r=Wt){let i=Object.entries(n.themes).filter(e=>e[1]).map(e=>({color:e[0],theme:e[1]})),a=i.map(i=>{let a=r(e,t,{...n,theme:i.theme});return{tokens:a,state:L(a),theme:typeof i.theme==`string`?i.theme:i.theme.name}}),o=en(...a.map(e=>e.tokens)),s=o[0].map((e,t)=>e.map((e,r)=>{let a={content:e.content,variants:{},offset:e.offset};return`includeExplanation`in n&&n.includeExplanation&&(a.explanation=e.explanation),o.forEach((e,n)=>{let{content:o,explanation:s,offset:c,...l}=e[t][r];a.variants[i[n].color]=l}),a})),c=a[0].state?new Vt(Object.fromEntries(a.map(e=>[e.theme,e.state?.getInternalStack(e.theme)])),a[0].state.lang):void 0;return c&&I(s,c),s}function en(...e){let t=e.map(()=>[]),n=e.length;for(let r=0;r<e[0].length;r++){let i=e.map(e=>e[r]),a=t.map(()=>[]);t.forEach((e,t)=>e.push(a[t]));let o=i.map(()=>0),s=i.map(e=>e[0]);for(;s.every(e=>e);){let e=Math.min(...s.map(e=>e.content.length));for(let t=0;t<n;t++){let n=s[t];n.content.length===e?(a[t].push(n),o[t]+=1,s[t]=i[t][o[t]]):(a[t].push({...n,content:n.content.slice(0,e)}),s[t]={...n,content:n.content.slice(e),offset:n.offset+e})}}}return t}var tn=[`area`,`base`,`basefont`,`bgsound`,`br`,`col`,`command`,`embed`,`frame`,`hr`,`image`,`img`,`input`,`keygen`,`link`,`meta`,`param`,`source`,`track`,`wbr`],R=class{constructor(e,t,n){this.normal=t,this.property=e,n&&(this.space=n)}};R.prototype.normal={},R.prototype.property={},R.prototype.space=void 0;function nn(e,t){let n={},r={};for(let t of e)Object.assign(n,t.property),Object.assign(r,t.normal);return new R(n,r,t)}function rn(e){return e.toLowerCase()}var z=class{constructor(e,t){this.attribute=t,this.property=e}};z.prototype.attribute=``,z.prototype.booleanish=!1,z.prototype.boolean=!1,z.prototype.commaOrSpaceSeparated=!1,z.prototype.commaSeparated=!1,z.prototype.defined=!1,z.prototype.mustUseProperty=!1,z.prototype.number=!1,z.prototype.overloadedBoolean=!1,z.prototype.property=``,z.prototype.spaceSeparated=!1,z.prototype.space=void 0;var an=e({boolean:()=>B,booleanish:()=>V,commaOrSpaceSeparated:()=>G,commaSeparated:()=>W,number:()=>H,overloadedBoolean:()=>sn,spaceSeparated:()=>U}),on=0,B=K(),V=K(),sn=K(),H=K(),U=K(),W=K(),G=K();function K(){return 2**++on}var cn=Object.keys(an),ln=class extends z{constructor(e,t,n,r){let i=-1;if(super(e,t),un(this,`space`,r),typeof n==`number`)for(;++i<cn.length;){let e=cn[i];un(this,cn[i],(n&an[e])===an[e])}}};ln.prototype.defined=!0;function un(e,t,n){n&&(e[t]=n)}function q(e){let t={},n={};for(let[r,i]of Object.entries(e.properties)){let a=new ln(r,e.transform(e.attributes||{},r),i,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(a.mustUseProperty=!0),t[r]=a,n[rn(r)]=r,n[rn(a.attribute)]=r}return new R(t,n,e.space)}var dn=q({properties:{ariaActiveDescendant:null,ariaAtomic:V,ariaAutoComplete:null,ariaBusy:V,ariaChecked:V,ariaColCount:H,ariaColIndex:H,ariaColSpan:H,ariaControls:U,ariaCurrent:null,ariaDescribedBy:U,ariaDetails:null,ariaDisabled:V,ariaDropEffect:U,ariaErrorMessage:null,ariaExpanded:V,ariaFlowTo:U,ariaGrabbed:V,ariaHasPopup:null,ariaHidden:V,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:U,ariaLevel:H,ariaLive:null,ariaModal:V,ariaMultiLine:V,ariaMultiSelectable:V,ariaOrientation:null,ariaOwns:U,ariaPlaceholder:null,ariaPosInSet:H,ariaPressed:V,ariaReadOnly:V,ariaRelevant:null,ariaRequired:V,ariaRoleDescription:U,ariaRowCount:H,ariaRowIndex:H,ariaRowSpan:H,ariaSelected:V,ariaSetSize:H,ariaSort:null,ariaValueMax:H,ariaValueMin:H,ariaValueNow:H,ariaValueText:null,role:null},transform(e,t){return t===`role`?t:`aria-`+t.slice(4).toLowerCase()}});function fn(e,t){return t in e?e[t]:t}function pn(e,t){return fn(e,t.toLowerCase())}var mn=q({attributes:{acceptcharset:`accept-charset`,classname:`class`,htmlfor:`for`,httpequiv:`http-equiv`},mustUseProperty:[`checked`,`multiple`,`muted`,`selected`],properties:{abbr:null,accept:W,acceptCharset:U,accessKey:U,action:null,allow:null,allowFullScreen:B,allowPaymentRequest:B,allowUserMedia:B,alt:null,as:null,async:B,autoCapitalize:null,autoComplete:U,autoFocus:B,autoPlay:B,blocking:U,capture:null,charSet:null,checked:B,cite:null,className:U,cols:H,colSpan:null,content:null,contentEditable:V,controls:B,controlsList:U,coords:H|W,crossOrigin:null,data:null,dateTime:null,decoding:null,default:B,defer:B,dir:null,dirName:null,disabled:B,download:sn,draggable:V,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:B,formTarget:null,headers:U,height:H,hidden:sn,high:H,href:null,hrefLang:null,htmlFor:U,httpEquiv:U,id:null,imageSizes:null,imageSrcSet:null,inert:B,inputMode:null,integrity:null,is:null,isMap:B,itemId:null,itemProp:U,itemRef:U,itemScope:B,itemType:U,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:B,low:H,manifest:null,max:null,maxLength:H,media:null,method:null,min:null,minLength:H,multiple:B,muted:B,name:null,nonce:null,noModule:B,noValidate:B,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:B,optimum:H,pattern:null,ping:U,placeholder:null,playsInline:B,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:B,referrerPolicy:null,rel:U,required:B,reversed:B,rows:H,rowSpan:H,sandbox:U,scope:null,scoped:B,seamless:B,selected:B,shadowRootClonable:B,shadowRootDelegatesFocus:B,shadowRootMode:null,shape:null,size:H,sizes:null,slot:null,span:H,spellCheck:V,src:null,srcDoc:null,srcLang:null,srcSet:null,start:H,step:null,style:null,tabIndex:H,target:null,title:null,translate:null,type:null,typeMustMatch:B,useMap:null,value:V,width:H,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:U,axis:null,background:null,bgColor:null,border:H,borderColor:null,bottomMargin:H,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:B,declare:B,event:null,face:null,frame:null,frameBorder:null,hSpace:H,leftMargin:H,link:null,longDesc:null,lowSrc:null,marginHeight:H,marginWidth:H,noResize:B,noHref:B,noShade:B,noWrap:B,object:null,profile:null,prompt:null,rev:null,rightMargin:H,rules:null,scheme:null,scrolling:V,standby:null,summary:null,text:null,topMargin:H,valueType:null,version:null,vAlign:null,vLink:null,vSpace:H,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:B,disableRemotePlayback:B,prefix:null,property:null,results:H,security:null,unselectable:null},space:`html`,transform:pn}),hn=q({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:G,accentHeight:H,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:H,amplitude:H,arabicForm:null,ascent:H,attributeName:null,attributeType:null,azimuth:H,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:H,by:null,calcMode:null,capHeight:H,className:U,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:H,diffuseConstant:H,direction:null,display:null,dur:null,divisor:H,dominantBaseline:null,download:B,dx:null,dy:null,edgeMode:null,editable:null,elevation:H,enableBackground:null,end:null,event:null,exponent:H,externalResourcesRequired:null,fill:null,fillOpacity:H,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:W,g2:W,glyphName:W,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:H,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:H,horizOriginX:H,horizOriginY:H,id:null,ideographic:H,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:H,k:H,k1:H,k2:H,k3:H,k4:H,kernelMatrix:G,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:H,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:H,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:H,overlineThickness:H,paintOrder:null,panose1:null,path:null,pathLength:H,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:U,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:H,pointsAtY:H,pointsAtZ:H,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:G,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:G,rev:G,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:G,requiredFeatures:G,requiredFonts:G,requiredFormats:G,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:H,specularExponent:H,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:H,strikethroughThickness:H,string:null,stroke:null,strokeDashArray:G,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:H,strokeOpacity:H,strokeWidth:null,style:null,surfaceScale:H,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:G,tabIndex:H,tableValues:null,target:null,targetX:H,targetY:H,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:G,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:H,underlineThickness:H,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:H,values:null,vAlphabetic:H,vMathematical:H,vectorEffect:null,vHanging:H,vIdeographic:H,version:null,vertAdvY:H,vertOriginX:H,vertOriginY:H,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:H,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:`svg`,transform:fn}),gn=q({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:`xlink`,transform(e,t){return`xlink:`+t.slice(5).toLowerCase()}}),_n=q({attributes:{xmlnsxlink:`xmlns:xlink`},properties:{xmlnsXLink:null,xmlns:null},space:`xmlns`,transform:pn}),vn=q({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:`xml`,transform(e,t){return`xml:`+t.slice(3).toLowerCase()}}),yn=/[A-Z]/g,bn=/-[a-z]/g,xn=/^data[-\w.:]+$/i;function Sn(e,t){let n=rn(t),r=t,i=z;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)===`data`&&xn.test(t)){if(t.charAt(4)===`-`){let e=t.slice(5).replace(bn,wn);r=`data`+e.charAt(0).toUpperCase()+e.slice(1)}else{let e=t.slice(4);if(!bn.test(e)){let n=e.replace(yn,Cn);n.charAt(0)!==`-`&&(n=`-`+n),t=`data`+n}}i=ln}return new i(r,t)}function Cn(e){return`-`+e.toLowerCase()}function wn(e){return e.charAt(1).toUpperCase()}var Tn=nn([dn,mn,gn,_n,vn],`html`),En=nn([dn,hn,gn,_n,vn],`svg`),Dn={}.hasOwnProperty;function On(e,t){let n=t||{};function r(t,...n){let i=r.invalid,a=r.handlers;if(t&&Dn.call(t,e)){let n=String(t[e]);i=Dn.call(a,n)?a[n]:r.unknown}if(i)return i.call(this,t,...n)}return r.handlers=n.handlers||{},r.invalid=n.invalid,r.unknown=n.unknown,r}var kn=/["&'<>`]/g,An=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,jn=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,Mn=/[|\\{}()[\]^$+*?.]/g,Nn=new WeakMap;function Pn(e,t){if(e=e.replace(t.subset?Fn(t.subset):kn,r),t.subset||t.escapeOnly)return e;return e.replace(An,n).replace(jn,r);function n(e,n,r){return t.format((e.charCodeAt(0)-55296)*1024+e.charCodeAt(1)-56320+65536,r.charCodeAt(n+2),t)}function r(e,n,r){return t.format(e.charCodeAt(0),r.charCodeAt(n+1),t)}}function Fn(e){let t=Nn.get(e);return t||(t=In(e),Nn.set(e,t)),t}function In(e){let t=[],n=-1;for(;++n<e.length;)t.push(e[n].replace(Mn,`\\$&`));return RegExp(`(?:`+t.join(`|`)+`)`,`g`)}var Ln=/[\dA-Fa-f]/;function Rn(e,t,n){let r=`&#x`+e.toString(16).toUpperCase();return n&&t&&!Ln.test(String.fromCharCode(t))?r:r+`;`}var zn=/\d/;function Bn(e,t,n){let r=`&#`+String(e);return n&&t&&!zn.test(String.fromCharCode(t))?r:r+`;`}var Vn=`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`.split(`.`),Hn={nbsp:`\xA0`,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:`Ê`,Euml:`Ë`,Igrave:`Ì`,Iacute:`Í`,Icirc:`Î`,Iuml:`Ï`,ETH:`Ð`,Ntilde:`Ñ`,Ograve:`Ò`,Oacute:`Ó`,Ocirc:`Ô`,Otilde:`Õ`,Ouml:`Ö`,times:`×`,Oslash:`Ø`,Ugrave:`Ù`,Uacute:`Ú`,Ucirc:`Û`,Uuml:`Ü`,Yacute:`Ý`,THORN:`Þ`,szlig:`ß`,agrave:`à`,aacute:`á`,acirc:`â`,atilde:`ã`,auml:`ä`,aring:`å`,aelig:`æ`,ccedil:`ç`,egrave:`è`,eacute:`é`,ecirc:`ê`,euml:`ë`,igrave:`ì`,iacute:`í`,icirc:`î`,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:`∑`,minus:`−`,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:`⌋`,lang:`〈`,rang:`〉`,loz:`◊`,spades:`♠`,clubs:`♣`,hearts:`♥`,diams:`♦`,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:`€`},Un=[`cent`,`copy`,`divide`,`gt`,`lt`,`not`,`para`,`times`],Wn={}.hasOwnProperty,Gn={},Kn;for(Kn in Hn)Wn.call(Hn,Kn)&&(Gn[Hn[Kn]]=Kn);var qn=/[^\dA-Za-z]/;function Jn(e,t,n,r){let i=String.fromCharCode(e);if(Wn.call(Gn,i)){let e=Gn[i],a=`&`+e;return n&&Vn.includes(e)&&!Un.includes(e)&&(!r||t&&t!==61&&qn.test(String.fromCharCode(t)))?a:a+`;`}return``}function Yn(e,t,n){let r=Rn(e,t,n.omitOptionalSemicolons),i;if((n.useNamedReferences||n.useShortestReferences)&&(i=Jn(e,t,n.omitOptionalSemicolons,n.attribute)),(n.useShortestReferences||!i)&&n.useShortestReferences){let i=Bn(e,t,n.omitOptionalSemicolons);i.length<r.length&&(r=i)}return i&&(!n.useShortestReferences||i.length<r.length)?i:r}function J(e,t){return Pn(e,Object.assign({format:Yn},t))}var Xn=/^>|^->|<!--|-->|--!>|<!-$/g,Zn=[`>`],Qn=[`<`,`>`];function $n(e,t,n,r){return r.settings.bogusComments?`<?`+J(e.value,Object.assign({},r.settings.characterReferences,{subset:Zn}))+`>`:`<!--`+e.value.replace(Xn,i)+`-->`;function i(e){return J(e,Object.assign({},r.settings.characterReferences,{subset:Qn}))}}function er(e,t,n,r){return`<!`+(r.settings.upperDoctype?`DOCTYPE`:`doctype`)+(r.settings.tightDoctype?``:` `)+`html>`}function tr(e,t){let n=String(e);if(typeof t!=`string`)throw TypeError(`Expected character`);let r=0,i=n.indexOf(t);for(;i!==-1;)r++,i=n.indexOf(t,i+t.length);return r}function nr(e,t){let n=t||{};return(e[e.length-1]===``?[...e,``]:e).join((n.padRight?` `:``)+`,`+(n.padLeft===!1?``:` `)).trim()}function rr(e){return e.join(` `).trim()}var ir=/[ \t\n\f\r]/g;function ar(e){return typeof e==`object`?e.type===`text`?or(e.value):!1:or(e)}function or(e){return e.replace(ir,``)===``}var Y=lr(1),sr=lr(-1),cr=[];function lr(e){return t;function t(t,n,r){let i=t?t.children:cr,a=(n||0)+e,o=i[a];if(!r)for(;o&&ar(o);)a+=e,o=i[a];return o}}var ur={}.hasOwnProperty;function dr(e){return t;function t(t,n,r){return ur.call(e,t.tagName)&&e[t.tagName](t,n,r)}}var fr=dr({body:hr,caption:pr,colgroup:pr,dd:yr,dt:vr,head:pr,html:mr,li:_r,optgroup:xr,option:Sr,p:gr,rp:br,rt:br,tbody:wr,td:Dr,tfoot:Tr,th:Dr,thead:Cr,tr:Er});function pr(e,t,n){let r=Y(n,t,!0);return!r||r.type!==`comment`&&!(r.type===`text`&&ar(r.value.charAt(0)))}function mr(e,t,n){let r=Y(n,t);return!r||r.type!==`comment`}function hr(e,t,n){let r=Y(n,t);return!r||r.type!==`comment`}function gr(e,t,n){let r=Y(n,t);return r?r.type===`element`&&(r.tagName===`address`||r.tagName===`article`||r.tagName===`aside`||r.tagName===`blockquote`||r.tagName===`details`||r.tagName===`div`||r.tagName===`dl`||r.tagName===`fieldset`||r.tagName===`figcaption`||r.tagName===`figure`||r.tagName===`footer`||r.tagName===`form`||r.tagName===`h1`||r.tagName===`h2`||r.tagName===`h3`||r.tagName===`h4`||r.tagName===`h5`||r.tagName===`h6`||r.tagName===`header`||r.tagName===`hgroup`||r.tagName===`hr`||r.tagName===`main`||r.tagName===`menu`||r.tagName===`nav`||r.tagName===`ol`||r.tagName===`p`||r.tagName===`pre`||r.tagName===`section`||r.tagName===`table`||r.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 _r(e,t,n){let r=Y(n,t);return!r||r.type===`element`&&r.tagName===`li`}function vr(e,t,n){let r=Y(n,t);return!!(r&&r.type===`element`&&(r.tagName===`dt`||r.tagName===`dd`))}function yr(e,t,n){let r=Y(n,t);return!r||r.type===`element`&&(r.tagName===`dt`||r.tagName===`dd`)}function br(e,t,n){let r=Y(n,t);return!r||r.type===`element`&&(r.tagName===`rp`||r.tagName===`rt`)}function xr(e,t,n){let r=Y(n,t);return!r||r.type===`element`&&r.tagName===`optgroup`}function Sr(e,t,n){let r=Y(n,t);return!r||r.type===`element`&&(r.tagName===`option`||r.tagName===`optgroup`)}function Cr(e,t,n){let r=Y(n,t);return!!(r&&r.type===`element`&&(r.tagName===`tbody`||r.tagName===`tfoot`))}function wr(e,t,n){let r=Y(n,t);return!r||r.type===`element`&&(r.tagName===`tbody`||r.tagName===`tfoot`)}function Tr(e,t,n){return!Y(n,t)}function Er(e,t,n){let r=Y(n,t);return!r||r.type===`element`&&r.tagName===`tr`}function Dr(e,t,n){let r=Y(n,t);return!r||r.type===`element`&&(r.tagName===`td`||r.tagName===`th`)}var Or=dr({body:jr,colgroup:Mr,head:Ar,html:kr,tbody:Nr});function kr(e){let t=Y(e,-1);return!t||t.type!==`comment`}function Ar(e){let t=new Set;for(let n of e.children)if(n.type===`element`&&(n.tagName===`base`||n.tagName===`title`)){if(t.has(n.tagName))return!1;t.add(n.tagName)}let n=e.children[0];return!n||n.type===`element`}function jr(e){let t=Y(e,-1,!0);return!t||t.type!==`comment`&&!(t.type===`text`&&ar(t.value.charAt(0)))&&!(t.type===`element`&&(t.tagName===`meta`||t.tagName===`link`||t.tagName===`script`||t.tagName===`style`||t.tagName===`template`))}function Mr(e,t,n){let r=sr(n,t),i=Y(e,-1,!0);return n&&r&&r.type===`element`&&r.tagName===`colgroup`&&fr(r,n.children.indexOf(r),n)?!1:!!(i&&i.type===`element`&&i.tagName===`col`)}function Nr(e,t,n){let r=sr(n,t),i=Y(e,-1);return n&&r&&r.type===`element`&&(r.tagName===`thead`||r.tagName===`tbody`)&&fr(r,n.children.indexOf(r),n)?!1:!!(i&&i.type===`element`&&i.tagName===`tr`)}var Pr={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 Fr(e,t,n,r){let i=r.schema,a=i.space===`svg`?!1:r.settings.omitOptionalTags,o=i.space===`svg`?r.settings.closeEmptyElements:r.settings.voids.includes(e.tagName.toLowerCase()),s=[],c;i.space===`html`&&e.tagName===`svg`&&(r.schema=En);let l=Ir(r,e.properties),u=r.all(i.space===`html`&&e.tagName===`template`?e.content:e);return r.schema=i,u&&(o=!1),(l||!a||!Or(e,t,n))&&(s.push(`<`,e.tagName,l?` `+l:``),o&&(i.space===`svg`||r.settings.closeSelfClosing)&&(c=l.charAt(l.length-1),(!r.settings.tightSelfClosing||c===`/`||c&&c!==`"`&&c!==`'`)&&s.push(` `),s.push(`/`)),s.push(`>`)),s.push(u),!o&&(!a||!fr(e,t,n))&&s.push(`</`+e.tagName+`>`),s.join(``)}function Ir(e,t){let n=[],r=-1,i;if(t){for(i in t)if(t[i]!==null&&t[i]!==void 0){let r=Lr(e,i,t[i]);r&&n.push(r)}}for(;++r<n.length;){let t=e.settings.tightAttributes?n[r].charAt(n[r].length-1):void 0;r!==n.length-1&&t!==`"`&&t!==`'`&&(n[r]+=` `)}return n.join(``)}function Lr(e,t,n){let r=Sn(e.schema,t),i=e.settings.allowParseErrors&&e.schema.space===`html`?0:1,a=+!e.settings.allowDangerousCharacters,o=e.quote,s;if(r.overloadedBoolean&&(n===r.attribute||n===``)?n=!0:(r.boolean||r.overloadedBoolean)&&(typeof n!=`string`||n===r.attribute||n===``)&&(n=!!n),n==null||n===!1||typeof n==`number`&&Number.isNaN(n))return``;let c=J(r.attribute,Object.assign({},e.settings.characterReferences,{subset:Pr.name[i][a]}));return n===!0||(n=Array.isArray(n)?(r.commaSeparated?nr:rr)(n,{padLeft:!e.settings.tightCommaSeparatedLists}):String(n),e.settings.collapseEmptyAttributes&&!n)?c:(e.settings.preferUnquoted&&(s=J(n,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:Pr.unquoted[i][a]}))),s!==n&&(e.settings.quoteSmart&&tr(n,o)>tr(n,e.alternative)&&(o=e.alternative),s=o+J(n,Object.assign({},e.settings.characterReferences,{subset:(o===`'`?Pr.single:Pr.double)[i][a],attribute:!0}))+o),c+(s&&`=`+s))}var Rr=[`<`,`&`];function zr(e,t,n,r){return n&&n.type===`element`&&(n.tagName===`script`||n.tagName===`style`)?e.value:J(e.value,Object.assign({},r.settings.characterReferences,{subset:Rr}))}function Br(e,t,n,r){return r.settings.allowDangerousHtml?e.value:zr(e,t,n,r)}function Vr(e,t,n,r){return r.all(e)}var Hr=On(`type`,{invalid:Ur,unknown:Wr,handlers:{comment:$n,doctype:er,element:Fr,raw:Br,root:Vr,text:zr}});function Ur(e){throw Error("Expected node, not `"+e+"`")}function Wr(e){throw Error("Cannot compile unknown node `"+e.type+"`")}var Gr={},Kr={},qr=[];function Jr(e,t){let n=t||Gr,r=n.quote||`"`,i=r===`"`?`'`:`"`;if(r!==`"`&&r!==`'`)throw Error("Invalid quote `"+r+"`, expected `'` or `\"`");return{one:Yr,all:Xr,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||tn,characterReferences:n.characterReferences||Kr,closeSelfClosing:n.closeSelfClosing||!1,closeEmptyElements:n.closeEmptyElements||!1},schema:n.space===`svg`?En:Tn,quote:r,alternative:i}.one(Array.isArray(e)?{type:`root`,children:e}:e,void 0,void 0)}function Yr(e,t,n){return Hr(e,t,n,this)}function Xr(e){let t=[],n=e&&e.children||qr,r=-1;for(;++r<n.length;)t[r]=this.one(n[r],r,e);return t.join(``)}function Zr(e,t){if(!t)return e;e.properties||={},e.properties.class||=[],typeof e.properties.class==`string`&&(e.properties.class=e.properties.class.split(/\s+/g)),Array.isArray(e.properties.class)||(e.properties.class=[]);let n=Array.isArray(t)?t:t.split(/\s+/g);for(let t of n)t&&!e.properties.class.includes(t)&&e.properties.class.push(t);return e}function Qr(e){let t=Ot(e,!0).map(([e])=>e);function n(n){if(n===e.length)return{line:t.length-1,character:t[t.length-1].length};let r=n,i=0;for(let e of t){if(r<e.length)break;r-=e.length,i++}return{line:i,character:r}}function r(e,n){let r=0;for(let n=0;n<e;n++)r+=t[n].length;return r+=n,r}return{lines:t,indexToPos:n,posToIndex:r}}var $r=`light-dark()`,ei=[`color`,`background-color`];function ti(e,t){let n=0,r=[];for(let i of t)i>n&&r.push({...e,content:e.content.slice(n,i),offset:e.offset+n}),n=i;return n<e.content.length&&r.push({...e,content:e.content.slice(n),offset:e.offset+n}),r}function ni(e,t){let n=Array.from(t instanceof Set?t:new Set(t)).sort((e,t)=>e-t);return n.length?e.map(e=>e.flatMap(e=>{let t=n.filter(t=>e.offset<t&&t<e.offset+e.content.length).map(t=>t-e.offset).sort((e,t)=>e-t);return t.length?ti(e,t):e})):e}function ri(e,t,n,r,i=`css-vars`){let a={content:e.content,explanation:e.explanation,offset:e.offset},o=t.map(t=>ii(e.variants[t])),s=new Set(o.flatMap(e=>Object.keys(e))),c={},l=(e,r)=>{let i=r===`color`?``:r===`background-color`?`-bg`:`-${r}`;return n+t[e]+(r===`color`?``:i)};return o.forEach((e,n)=>{for(let a of s){let s=e[a]||`inherit`;if(n===0&&r&&ei.includes(a))if(r===$r&&o.length>1){let e=t.findIndex(e=>e===`light`),r=t.findIndex(e=>e===`dark`);if(e===-1||r===-1)throw new _('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');c[a]=`light-dark(${o[e][a]||`inherit`}, ${o[r][a]||`inherit`})`,i===`css-vars`&&(c[l(n,a)]=s)}else c[a]=s;else i===`css-vars`&&(c[l(n,a)]=s)}}),a.htmlStyle=c,a}function ii(e){let t={};if(e.color&&(t.color=e.color),e.bgColor&&(t[`background-color`]=e.bgColor),e.fontStyle){e.fontStyle&T.Italic&&(t[`font-style`]=`italic`),e.fontStyle&T.Bold&&(t[`font-weight`]=`bold`);let n=[];e.fontStyle&T.Underline&&n.push(`underline`),e.fontStyle&T.Strikethrough&&n.push(`line-through`),n.length&&(t[`text-decoration`]=n.join(` `))}return t}function ai(e){return typeof e==`string`?e:Object.entries(e).map(([e,t])=>`${e}:${t}`).join(`;`)}function oi(){let e=new WeakMap;function t(t){if(!e.has(t.meta)){let n=Qr(t.source);function r(e){if(typeof e==`number`){if(e<0||e>t.source.length)throw new _(`Invalid decoration offset: ${e}. Code length: ${t.source.length}`);return{...n.indexToPos(e),offset:e}}else{let t=n.lines[e.line];if(t===void 0)throw new _(`Invalid decoration position ${JSON.stringify(e)}. Lines length: ${n.lines.length}`);let r=e.character;if(r<0&&(r=t.length+r),r<0||r>t.length)throw new _(`Invalid decoration position ${JSON.stringify(e)}. Line ${e.line} length: ${t.length}`);return{...e,character:r,offset:n.posToIndex(e.line,r)}}}let i=(t.options.decorations||[]).map(e=>({...e,start:r(e.start),end:r(e.end)}));si(i),e.set(t.meta,{decorations:i,converter:n,source:t.source})}return e.get(t.meta)}return{name:`shiki:decorations`,tokens(e){if(this.options.decorations?.length)return ni(e,t(this).decorations.flatMap(e=>[e.start.offset,e.end.offset]))},code(e){if(!this.options.decorations?.length)return;let n=t(this),r=Array.from(e.children).filter(e=>e.type===`element`&&e.tagName===`span`);if(r.length!==n.converter.lines.length)throw new _(`Number of lines in code element (${r.length}) does not match the number of lines in the source (${n.converter.lines.length}). Failed to apply decorations.`);function i(e,t,n,i){let a=r[e],s=``,c=-1,l=-1;if(t===0&&(c=0),n===0&&(l=0),n===1/0&&(l=a.children.length),c===-1||l===-1)for(let e=0;e<a.children.length;e++)s+=ci(a.children[e]),c===-1&&s.length===t&&(c=e+1),l===-1&&s.length===n&&(l=e+1);if(c===-1)throw new _(`Failed to find start index for decoration ${JSON.stringify(i.start)}`);if(l===-1)throw new _(`Failed to find end index for decoration ${JSON.stringify(i.end)}`);let u=a.children.slice(c,l);if(!i.alwaysWrap&&u.length===a.children.length)o(a,i,`line`);else if(!i.alwaysWrap&&u.length===1&&u[0].type===`element`)o(u[0],i,`token`);else{let e={type:`element`,tagName:`span`,properties:{},children:u};o(e,i,`wrapper`),a.children.splice(c,u.length,e)}}function a(e,t){r[e]=o(r[e],t,`line`)}function o(e,t,n){let r=t.properties||{},i=t.transform||(e=>e);return e.tagName=t.tagName||`span`,e.properties={...e.properties,...r,class:e.properties.class},t.properties?.class&&Zr(e,t.properties.class),e=i(e,n)||e,e}let s=[],c=n.decorations.sort((e,t)=>t.start.offset-e.start.offset||e.end.offset-t.end.offset);for(let e of c){let{start:t,end:n}=e;if(t.line===n.line)i(t.line,t.character,n.character,e);else if(t.line<n.line){i(t.line,t.character,1/0,e);for(let r=t.line+1;r<n.line;r++)s.unshift(()=>a(r,e));i(n.line,0,n.character,e)}}s.forEach(e=>e())}}}function si(e){for(let t=0;t<e.length;t++){let n=e[t];if(n.start.offset>n.end.offset)throw new _(`Invalid decoration range: ${JSON.stringify(n.start)} - ${JSON.stringify(n.end)}`);for(let r=t+1;r<e.length;r++){let t=e[r],i=n.start.offset<=t.start.offset&&t.start.offset<n.end.offset,a=n.start.offset<t.end.offset&&t.end.offset<=n.end.offset,o=t.start.offset<=n.start.offset&&n.start.offset<t.end.offset,s=t.start.offset<n.end.offset&&n.end.offset<=t.end.offset;if(i||a||o||s){if(i&&a||o&&s||o&&n.start.offset===n.end.offset||a&&t.start.offset===t.end.offset)continue;throw new _(`Decorations ${JSON.stringify(n.start)} and ${JSON.stringify(t.start)} intersect.`)}}}}function ci(e){return e.type===`text`?e.value:e.type===`element`?e.children.map(ci).join(``):``}var li=[oi()];function X(e){let t=ui(e.transformers||[]);return[...t.pre,...t.normal,...t.post,...li]}function ui(e){let t=[],n=[],r=[];for(let i of e)switch(i.enforce){case`pre`:t.push(i);break;case`post`:n.push(i);break;default:r.push(i)}return{pre:t,post:n,normal:r}}var Z=[`black`,`red`,`green`,`yellow`,`blue`,`magenta`,`cyan`,`white`,`brightBlack`,`brightRed`,`brightGreen`,`brightYellow`,`brightBlue`,`brightMagenta`,`brightCyan`,`brightWhite`],di={1:`bold`,2:`dim`,3:`italic`,4:`underline`,7:`reverse`,8:`hidden`,9:`strikethrough`};function fi(e,t){let n=e.indexOf(`\x1B`,t);if(n!==-1&&e[n+1]===`[`){let t=e.indexOf(`m`,n);if(t!==-1)return{sequence:e.substring(n+2,t).split(`;`),startPosition:n,position:t+1}}return{position:e.length}}function pi(e){let t=e.shift();if(t===`2`){let t=e.splice(0,3).map(e=>Number.parseInt(e));return t.length!==3||t.some(e=>Number.isNaN(e))?void 0:{type:`rgb`,rgb:t}}else if(t===`5`){let t=e.shift();if(t)return{type:`table`,index:Number(t)}}}function mi(e){let t=[];for(;e.length>0;){let n=e.shift();if(!n)continue;let r=Number.parseInt(n);if(!Number.isNaN(r))if(r===0)t.push({type:`resetAll`});else if(r<=9)di[r]&&t.push({type:`setDecoration`,value:di[r]});else if(r<=29){let e=di[r-20];e&&(t.push({type:`resetDecoration`,value:e}),e===`dim`&&t.push({type:`resetDecoration`,value:`bold`}))}else if(r<=37)t.push({type:`setForegroundColor`,value:{type:`named`,name:Z[r-30]}});else if(r===38){let n=pi(e);n&&t.push({type:`setForegroundColor`,value:n})}else if(r===39)t.push({type:`resetForegroundColor`});else if(r<=47)t.push({type:`setBackgroundColor`,value:{type:`named`,name:Z[r-40]}});else if(r===48){let n=pi(e);n&&t.push({type:`setBackgroundColor`,value:n})}else r===49?t.push({type:`resetBackgroundColor`}):r===53?t.push({type:`setDecoration`,value:`overline`}):r===55?t.push({type:`resetDecoration`,value:`overline`}):r>=90&&r<=97?t.push({type:`setForegroundColor`,value:{type:`named`,name:Z[r-90+8]}}):r>=100&&r<=107&&t.push({type:`setBackgroundColor`,value:{type:`named`,name:Z[r-100+8]}})}return t}function hi(){let e=null,t=null,n=new Set;return{parse(r){let i=[],a=0;do{let o=fi(r,a),s=o.sequence?r.substring(a,o.startPosition):r.substring(a);if(s.length>0&&i.push({value:s,foreground:e,background:t,decorations:new Set(n)}),o.sequence){let r=mi(o.sequence);for(let i of r)i.type===`resetAll`?(e=null,t=null,n.clear()):i.type===`resetForegroundColor`?e=null:i.type===`resetBackgroundColor`?t=null:i.type===`resetDecoration`&&n.delete(i.value);for(let i of r)i.type===`setForegroundColor`?e=i.value:i.type===`setBackgroundColor`?t=i.value:i.type===`setDecoration`&&n.add(i.value)}a=o.position}while(a<r.length);return i}}}var gi={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 _i(e=gi){function t(t){return e[t]}function n(e){return`#${e.map(e=>Math.max(0,Math.min(e,255)).toString(16).padStart(2,`0`)).join(``)}`}let r;function i(){if(r)return r;r=[];for(let e=0;e<Z.length;e++)r.push(t(Z[e]));let e=[0,95,135,175,215,255];for(let t=0;t<6;t++)for(let i=0;i<6;i++)for(let a=0;a<6;a++)r.push(n([e[t],e[i],e[a]]));let i=8;for(let e=0;e<24;e++,i+=10)r.push(n([i,i,i]));return r}function a(e){return i()[e]}function o(e){switch(e.type){case`named`:return t(e.name);case`rgb`:return n(e.rgb);case`table`:return a(e.index)}}return{value:o}}var vi={black:`#000000`,red:`#cd3131`,green:`#0DBC79`,yellow:`#E5E510`,blue:`#2472C8`,magenta:`#BC3FBC`,cyan:`#11A8CD`,white:`#E5E5E5`,brightBlack:`#666666`,brightRed:`#F14C4C`,brightGreen:`#23D18B`,brightYellow:`#F5F543`,brightBlue:`#3B8EEA`,brightMagenta:`#D670D6`,brightCyan:`#29B8DB`,brightWhite:`#FFFFFF`};function yi(e,t,n){let r=xt(e,n),i=Ot(t),a=_i(Object.fromEntries(Z.map(t=>{let n=`terminal.ansi${t[0].toUpperCase()}${t.substring(1)}`;return[t,e.colors?.[n]||vi[t]]}))),o=hi();return i.map(t=>o.parse(t[0]).map(n=>{let i,o;n.decorations.has(`reverse`)?(i=n.background?a.value(n.background):e.bg,o=n.foreground?a.value(n.foreground):e.fg):(i=n.foreground?a.value(n.foreground):e.fg,o=n.background?a.value(n.background):void 0),i=P(i,r),o=P(o,r),n.decorations.has(`dim`)&&(i=bi(i));let s=T.None;return n.decorations.has(`bold`)&&(s|=T.Bold),n.decorations.has(`italic`)&&(s|=T.Italic),n.decorations.has(`underline`)&&(s|=T.Underline),n.decorations.has(`strikethrough`)&&(s|=T.Strikethrough),{content:n.value,offset:t[1],color:i,bgColor:o,fontStyle:s}}))}function bi(e){let t=e.match(/#([0-9a-f]{3,8})/i);if(t){let e=t[1];if(e.length===8){let t=Math.round(Number.parseInt(e.slice(6,8),16)/2).toString(16).padStart(2,`0`);return`#${e.slice(0,6)}${t}`}else if(e.length===6)return`#${e}80`;else if(e.length===4){let t=e[0],n=e[1],r=e[2],i=e[3];return`#${t}${t}${n}${n}${r}${r}${Math.round(Number.parseInt(`${i}${i}`,16)/2).toString(16).padStart(2,`0`)}`}else if(e.length===3){let t=e[0],n=e[1],r=e[2];return`#${t}${t}${n}${n}${r}${r}80`}}let n=e.match(/var\((--[\w-]+-ansi-[\w-]+)\)/);return n?`var(${n[1]}-dim)`:e}function xi(e,t,n={}){let r=e.resolveLangAlias(n.lang||`text`),{theme:i=e.getLoadedThemes()[0]}=n;if(!wt(r)&&!Et(i)&&r===`ansi`){let{theme:r}=e.setTheme(i);return yi(r,t,n)}return Wt(e,t,n)}function Si(e,t,n){let r,i,a,o,s,c;if(`themes`in n){let{defaultColor:l=`light`,cssVariablePrefix:u=`--shiki-`,colorsRendering:d=`css-vars`}=n,f=Object.entries(n.themes).filter(e=>e[1]).map(e=>({color:e[0],theme:e[1]})).sort((e,t)=>e.color===l?-1:+(t.color===l));if(f.length===0)throw new _("`themes` option must not be empty");let p=$t(e,t,n,xi);if(c=L(p),l&&$r!==l&&!f.find(e=>e.color===l))throw new _(`\`themes\` option must contain the defaultColor key \`${l}\``);let m=f.map(t=>e.getTheme(t.theme)),h=f.map(e=>e.color);a=p.map(e=>e.map(e=>ri(e,h,u,l,d))),c&&I(a,c);let g=f.map(e=>xt(e.theme,n));i=Ci(f,m,g,u,l,`fg`,d),r=Ci(f,m,g,u,l,`bg`,d),o=`shiki-themes ${m.map(e=>e.name).join(` `)}`,s=l?void 0:[i,r].join(`;`)}else if(`theme`in n){let s=xt(n.theme,n);a=xi(e,t,n);let l=e.getTheme(n.theme);r=P(l.bg,s),i=P(l.fg,s),o=l.name,c=L(a)}else throw new _("Invalid options, either `theme` or `themes` must be provided");return{tokens:a,fg:i,bg:r,themeName:o,rootStyle:s,grammarState:c}}function Ci(e,t,n,r,i,a,o){return e.map((s,c)=>{let l=P(t[c][a],n[c])||`inherit`,u=`${r+s.color}${a===`bg`?`-bg`:``}:${l}`;if(c===0&&i){if(i===$r&&e.length>1){let r=e.findIndex(e=>e.color===`light`),i=e.findIndex(e=>e.color===`dark`);if(r===-1||i===-1)throw new _('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');return`light-dark(${P(t[r][a],n[r])||`inherit`}, ${P(t[i][a],n[i])||`inherit`});${u}`}return l}return o===`css-vars`?u:null}).filter(e=>!!e).join(`;`)}function wi(e,t,n,r={meta:{},options:n,codeToHast:(t,n)=>wi(e,t,n),codeToTokens:(t,n)=>Si(e,t,n)}){let i=t;for(let e of X(n))i=e.preprocess?.call(r,i,n)||i;let{tokens:a,fg:o,bg:s,themeName:c,rootStyle:l,grammarState:u}=Si(e,i,n),{mergeWhitespaces:d=!0,mergeSameStyleTokens:f=!1}=n;d===!0?a=Ei(a):d===`never`&&(a=Di(a)),f&&(a=Oi(a));let p={...r,get source(){return i}};for(let e of X(n))a=e.tokens?.call(p,a)||a;return Ti(a,{...n,fg:o,bg:s,themeName:c,rootStyle:n.rootStyle===!1?!1:n.rootStyle??l},p,u)}function Ti(e,t,n,r=L(e)){let i=X(t),a=[],o={type:`root`,children:[]},{structure:s=`classic`,tabindex:c=`0`}=t,l={class:`shiki ${t.themeName||``}`};t.rootStyle!==!1&&(t.rootStyle==null?l.style=`background-color:${t.bg};color:${t.fg}`:l.style=t.rootStyle),c!==!1&&c!=null&&(l.tabindex=c.toString());for(let[e,n]of Object.entries(t.meta||{}))e.startsWith(`_`)||(l[e]=n);let u={type:`element`,tagName:`pre`,properties:l,children:[],data:t.data},d={type:`element`,tagName:`code`,properties:{},children:a},f=[],p={...n,structure:s,addClassToHast:Zr,get source(){return n.source},get tokens(){return e},get options(){return t},get root(){return o},get pre(){return u},get code(){return d},get lines(){return f}};if(e.forEach((e,t)=>{t&&(s===`inline`?o.children.push({type:`element`,tagName:`br`,properties:{},children:[]}):s===`classic`&&a.push({type:`text`,value:`
|
||
`}));let n={type:`element`,tagName:`span`,properties:{class:`line`},children:[]},r=0;for(let a of e){let e={type:`element`,tagName:`span`,properties:{...a.htmlAttrs},children:[{type:`text`,value:a.content}]},c=ai(a.htmlStyle||ii(a));c&&(e.properties.style=c);for(let o of i)e=o?.span?.call(p,e,t+1,r,n,a)||e;s===`inline`?o.children.push(e):s===`classic`&&n.children.push(e),r+=a.content.length}if(s===`classic`){for(let e of i)n=e?.line?.call(p,n,t+1)||n;f.push(n),a.push(n)}else s===`inline`&&f.push(n)}),s===`classic`){for(let e of i)d=e?.code?.call(p,d)||d;u.children.push(d);for(let e of i)u=e?.pre?.call(p,u)||u;o.children.push(u)}else if(s===`inline`){let e=[],t={type:`element`,tagName:`span`,properties:{class:`line`},children:[]};for(let n of o.children)n.type===`element`&&n.tagName===`br`?(e.push(t),t={type:`element`,tagName:`span`,properties:{class:`line`},children:[]}):(n.type===`element`||n.type===`text`)&&t.children.push(n);e.push(t);let n={type:`element`,tagName:`code`,properties:{},children:e};for(let e of i)n=e?.code?.call(p,n)||n;o.children=[];for(let e=0;e<n.children.length;e++){e>0&&o.children.push({type:`element`,tagName:`br`,properties:{},children:[]});let t=n.children[e];t.type===`element`&&o.children.push(...t.children)}}let m=o;for(let e of i)m=e?.root?.call(p,m)||m;return r&&I(m,r),m}function Ei(e){return e.map(e=>{let t=[],n=``,r;return e.forEach((i,a)=>{let o=!(i.fontStyle&&(i.fontStyle&T.Underline||i.fontStyle&T.Strikethrough));o&&i.content.match(/^\s+$/)&&e[a+1]?(r===void 0&&(r=i.offset),n+=i.content):n?(o?t.push({...i,offset:r,content:n+i.content}):t.push({content:n,offset:r},i),r=void 0,n=``):t.push(i)}),t})}function Di(e){return e.map(e=>e.flatMap(e=>{if(e.content.match(/^\s+$/))return e;let t=e.content.match(/^(\s*)(.*?)(\s*)$/);if(!t)return e;let[,n,r,i]=t;if(!n&&!i)return e;let a=[{...e,offset:e.offset+n.length,content:r}];return n&&a.unshift({content:n,offset:e.offset}),i&&a.push({content:i,offset:e.offset+n.length+r.length}),a}))}function Oi(e){return e.map(e=>{let t=[];for(let n of e){if(t.length===0){t.push({...n});continue}let e=t[t.length-1],r=ai(e.htmlStyle||ii(e)),i=ai(n.htmlStyle||ii(n)),a=e.fontStyle&&(e.fontStyle&T.Underline||e.fontStyle&T.Strikethrough),o=n.fontStyle&&(n.fontStyle&T.Underline||n.fontStyle&T.Strikethrough);!a&&!o&&r===i?e.content+=n.content:t.push({...n})}return t})}var ki=Jr;function Ai(e,t,n){let r={meta:{},options:n,codeToHast:(t,n)=>wi(e,t,n),codeToTokens:(t,n)=>Si(e,t,n)},i=ki(wi(e,t,n,r));for(let e of X(n))i=e.postprocess?.call(r,i,n)||i;return i}async function ji(e){let t=await zt(e);return{getLastGrammarState:(...e)=>Gt(t,...e),codeToTokensBase:(e,n)=>xi(t,e,n),codeToTokensWithThemes:(e,n)=>$t(t,e,n),codeToTokens:(e,n)=>Si(t,e,n),codeToHast:(e,n)=>wi(t,e,n),codeToHtml:(e,n)=>Ai(t,e,n),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}var Mi=class extends Error{constructor(e){super(e),this.name=`ShikiError`}};function Ni(){return 2147483648}function Pi(){return typeof performance<`u`?performance.now():Date.now()}var Fi=(e,t)=>e+(t-e%t)%t;async function Ii(e){let t,n,r={};function i(e){n=e,r.HEAPU8=new Uint8Array(e),r.HEAPU32=new Uint32Array(e)}function a(e,t,n){r.HEAPU8.copyWithin(e,t,t+n)}function o(e){try{return t.grow(e-n.byteLength+65535>>>16),i(t.buffer),1}catch{}}function s(e){let t=r.HEAPU8.length;e>>>=0;let n=Ni();if(e>n)return!1;for(let r=1;r<=4;r*=2){let i=t*(1+.2/r);if(i=Math.min(i,e+100663296),o(Math.min(n,Fi(Math.max(e,i),65536))))return!0}return!1}let c=typeof TextDecoder<`u`?new TextDecoder(`utf8`):void 0;function l(e,t,n=1024){let r=t+n,i=t;for(;e[i]&&!(i>=r);)++i;if(i-t>16&&e.buffer&&c)return c.decode(e.subarray(t,i));let a=``;for(;t<i;){let n=e[t++];if(!(n&128)){a+=String.fromCharCode(n);continue}let r=e[t++]&63;if((n&224)==192){a+=String.fromCharCode((n&31)<<6|r);continue}let i=e[t++]&63;if(n=(n&240)==224?(n&15)<<12|r<<6|i:(n&7)<<18|r<<12|i<<6|e[t++]&63,n<65536)a+=String.fromCharCode(n);else{let e=n-65536;a+=String.fromCharCode(55296|e>>10,56320|e&1023)}}return a}function u(e,t){return e?l(r.HEAPU8,e,t):``}let d={emscripten_get_now:Pi,emscripten_memcpy_big:a,emscripten_resize_heap:s,fd_write:()=>0};async function f(){let n=await e({env:d,wasi_snapshot_preview1:d});t=n.memory,i(t.buffer),Object.assign(r,n),r.UTF8ToString=u}return await f(),r}var Li=Object.defineProperty,Ri=(e,t,n)=>t in e?Li(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Q=(e,t,n)=>Ri(e,typeof t==`symbol`?t:t+``,n),$=null;function zi(e){throw new Mi(e.UTF8ToString(e.getLastOnigError()))}var Bi=class e{constructor(t){Q(this,`utf16Length`),Q(this,`utf8Length`),Q(this,`utf16Value`),Q(this,`utf8Value`),Q(this,`utf16OffsetToUtf8`),Q(this,`utf8OffsetToUtf16`);let n=t.length,r=e._utf8ByteLength(t),i=r!==n,a=i?new Uint32Array(n+1):null;i&&(a[n]=r);let o=i?new Uint32Array(r+1):null;i&&(o[r]=n);let s=new Uint8Array(r),c=0;for(let e=0;e<n;e++){let r=t.charCodeAt(e),l=r,u=!1;if(r>=55296&&r<=56319&&e+1<n){let n=t.charCodeAt(e+1);n>=56320&&n<=57343&&(l=(r-55296<<10)+65536|n-56320,u=!0)}i&&(a[e]=c,u&&(a[e+1]=c),l<=127?o[c+0]=e:l<=2047?(o[c+0]=e,o[c+1]=e):l<=65535?(o[c+0]=e,o[c+1]=e,o[c+2]=e):(o[c+0]=e,o[c+1]=e,o[c+2]=e,o[c+3]=e)),l<=127?s[c++]=l:l<=2047?(s[c++]=192|(l&1984)>>>6,s[c++]=128|(l&63)>>>0):l<=65535?(s[c++]=224|(l&61440)>>>12,s[c++]=128|(l&4032)>>>6,s[c++]=128|(l&63)>>>0):(s[c++]=240|(l&1835008)>>>18,s[c++]=128|(l&258048)>>>12,s[c++]=128|(l&4032)>>>6,s[c++]=128|(l&63)>>>0),u&&e++}this.utf16Length=n,this.utf8Length=r,this.utf16Value=t,this.utf8Value=s,this.utf16OffsetToUtf8=a,this.utf8OffsetToUtf16=o}static _utf8ByteLength(e){let t=0;for(let n=0,r=e.length;n<r;n++){let i=e.charCodeAt(n),a=i,o=!1;if(i>=55296&&i<=56319&&n+1<r){let t=e.charCodeAt(n+1);t>=56320&&t<=57343&&(a=(i-55296<<10)+65536|t-56320,o=!0)}a<=127?t+=1:a<=2047?t+=2:a<=65535?t+=3:t+=4,o&&n++}return t}createString(e){let t=e.omalloc(this.utf8Length);return e.HEAPU8.set(this.utf8Value,t),t}},Vi=class e{constructor(t){if(Q(this,`id`,++e.LAST_ID),Q(this,`_onigBinding`),Q(this,`content`),Q(this,`utf16Length`),Q(this,`utf8Length`),Q(this,`utf16OffsetToUtf8`),Q(this,`utf8OffsetToUtf16`),Q(this,`ptr`),!$)throw new Mi(`Must invoke loadWasm first.`);this._onigBinding=$,this.content=t;let n=new Bi(t);this.utf16Length=n.utf16Length,this.utf8Length=n.utf8Length,this.utf16OffsetToUtf8=n.utf16OffsetToUtf8,this.utf8OffsetToUtf16=n.utf8OffsetToUtf16,this.utf8Length<1e4&&!e._sharedPtrInUse?(e._sharedPtr||=$.omalloc(1e4),e._sharedPtrInUse=!0,$.HEAPU8.set(n.utf8Value,e._sharedPtr),this.ptr=e._sharedPtr):this.ptr=n.createString($)}convertUtf8OffsetToUtf16(e){return this.utf8OffsetToUtf16?e<0?0:e>this.utf8Length?this.utf16Length:this.utf8OffsetToUtf16[e]:e}convertUtf16OffsetToUtf8(e){return this.utf16OffsetToUtf8?e<0?0:e>this.utf16Length?this.utf8Length:this.utf16OffsetToUtf8[e]:e}dispose(){this.ptr===e._sharedPtr?e._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};Q(Vi,`LAST_ID`,0),Q(Vi,`_sharedPtr`,0),Q(Vi,`_sharedPtrInUse`,!1);var Hi=Vi,Ui=class{constructor(e){if(Q(this,`_onigBinding`),Q(this,`_ptr`),!$)throw new Mi(`Must invoke loadWasm first.`);let t=[],n=[];for(let r=0,i=e.length;r<i;r++){let i=new Bi(e[r]);t[r]=i.createString($),n[r]=i.utf8Length}let r=$.omalloc(4*e.length);$.HEAPU32.set(t,r/4);let i=$.omalloc(4*e.length);$.HEAPU32.set(n,i/4);let a=$.createOnigScanner(r,i,e.length);for(let n=0,r=e.length;n<r;n++)$.ofree(t[n]);$.ofree(i),$.ofree(r),a===0&&zi($),this._onigBinding=$,this._ptr=a}dispose(){this._onigBinding.freeOnigScanner(this._ptr)}findNextMatchSync(e,t,n){let r=0;if(typeof n==`number`&&(r=n),typeof e==`string`){e=new Hi(e);let n=this._findNextMatchSync(e,t,!1,r);return e.dispose(),n}return this._findNextMatchSync(e,t,!1,r)}_findNextMatchSync(e,t,n,r){let i=this._onigBinding,a=i.findNextOnigScannerMatch(this._ptr,e.id,e.ptr,e.utf8Length,e.convertUtf16OffsetToUtf8(t),r);if(a===0)return null;let o=i.HEAPU32,s=a/4,c=o[s++],l=o[s++],u=[];for(let t=0;t<l;t++){let n=e.convertUtf8OffsetToUtf16(o[s++]),r=e.convertUtf8OffsetToUtf16(o[s++]);u[t]={start:n,end:r,length:r-n}}return{index:c,captureIndices:u}}};function Wi(e){return typeof e.instantiator==`function`}function Gi(e){return typeof e.default==`function`}function Ki(e){return e.data!==void 0}function qi(e){return typeof Response<`u`&&e instanceof Response}function Ji(e){return typeof ArrayBuffer<`u`&&(e instanceof ArrayBuffer||ArrayBuffer.isView(e))||typeof Buffer<`u`&&Buffer.isBuffer?.(e)||typeof SharedArrayBuffer<`u`&&e instanceof SharedArrayBuffer||typeof Uint32Array<`u`&&e instanceof Uint32Array}var Yi;function Xi(e){if(Yi)return Yi;async function t(){$=await Ii(async t=>{let n=e;return n=await n,typeof n==`function`&&(n=await n(t)),typeof n==`function`&&(n=await n(t)),Wi(n)?n=await n.instantiator(t):Gi(n)?n=await n.default(t):(Ki(n)&&(n=n.data),qi(n)?n=typeof WebAssembly.instantiateStreaming==`function`?await Qi(n)(t):await $i(n)(t):Ji(n)||n instanceof WebAssembly.Module?n=await Zi(n)(t):`default`in n&&n.default instanceof WebAssembly.Module&&(n=await Zi(n.default)(t))),`instance`in n&&(n=n.instance),`exports`in n&&(n=n.exports),n})}return Yi=t(),Yi}function Zi(e){return t=>WebAssembly.instantiate(e,t)}function Qi(e){return t=>WebAssembly.instantiateStreaming(e,t)}function $i(e){return async t=>{let n=await e.arrayBuffer();return WebAssembly.instantiate(n,t)}}async function ea(e){return e&&await Xi(e),{createScanner(e){return new Ui(e.map(e=>typeof e==`string`?e:e.source))},createString(e){return new Hi(e)}}}var ta=h(u({__name:`CodeEditor`,setup(e){let u=null,h=null,_=null,{grammars:v,theme:y}=g,ee=l(),b=o(),x=o(),S=l(``);async function te(){u=await ji({themes:`light`in y&&`dark`in y?[y.light,y.dark]:[y],langs:Object.keys(v).map(e=>v[e]),engine:ea(()=>p(()=>import(`./wasm-BxgWCecI.js`),[]))})}function C(){if(u&&ee.value&&S.value){let e=u.codeToHtml(S.value,{lang:ee.value,...`light`in y&&`dark`in y?{themes:y,defaultColor:!1}:{theme:y}});h&&(h.innerHTML=e.replace(/^<pre[^>]*>/,``).replace(/<\/pre>$/,``).replace(/(<span class="line">)(<\/span>)/g,`$1<wbr>$2`)),_&&(_.innerHTML=e.split(`
|
||
`).map(()=>`<div class="line-number"></div>`).join(``))}}function w(){h&&(h.scrollLeft=x.value?.scrollLeft||0)}return r([S],C,{flush:`post`}),s(async()=>{if(!b.value||!x.value)return;await te(),h=b.value.querySelector(`pre`),_=b.value.querySelector(`.line-numbers`);let e=m(b.value);ee.value=e.lang,S.value=e.code,x.value.addEventListener(`scroll`,w,{passive:!1}),window.addEventListener(`resize`,w)}),t(()=>{x.value?.removeEventListener(`scroll`,w),window.removeEventListener(`resize`,w),u=null,h=null,_=null}),(e,t)=>(n(),a(`div`,{ref_key:`editorEl`,ref:b,class:`code-repl-editor`},[d(e.$slots,`default`,{},void 0,!0),i(c(`textarea`,{ref_key:`textAreaEl`,ref:x,"onUpdate:modelValue":t[0]||=e=>S.value=e,class:`code-repl-input`,spellcheck:`false`},null,512),[[f,S.value]])],512))}}),[[`__scopeId`,`data-v-2a9ff595`]]);export{ta as default}; |