1 |
- {"version":3,"file":"mode-csound_document-bac15209.js","sources":["../../node_modules/ace-builds/src-noconflict/mode-csound_document.js"],"sourcesContent":["ace.define(\"ace/mode/csound_preprocessor_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar TextHighlightRules = require(\"./text_highlight_rules\").TextHighlightRules;\nvar CsoundPreprocessorHighlightRules = function (embeddedRulePrefix) {\n this.embeddedRulePrefix = embeddedRulePrefix === undefined ? \"\" : embeddedRulePrefix;\n this.semicolonComments = {\n token: \"comment.line.semicolon.csound\",\n regex: \";.*$\"\n };\n this.comments = [\n {\n token: \"punctuation.definition.comment.begin.csound\",\n regex: \"/\\\\*\",\n push: [\n {\n token: \"punctuation.definition.comment.end.csound\",\n regex: \"\\\\*/\",\n next: \"pop\"\n }, {\n defaultToken: \"comment.block.csound\"\n }\n ]\n }, {\n token: \"comment.line.double-slash.csound\",\n regex: \"//.*$\"\n },\n this.semicolonComments\n ];\n this.macroUses = [\n {\n token: [\"entity.name.function.preprocessor.csound\", \"punctuation.definition.macro-parameter-value-list.begin.csound\"],\n regex: /(\\$[A-Z_a-z]\\w*\\.?)(\\()/,\n next: \"macro parameter value list\"\n }, {\n token: \"entity.name.function.preprocessor.csound\",\n regex: /\\$[A-Z_a-z]\\w*(?:\\.|\\b)/\n }\n ];\n this.numbers = [\n {\n token: \"constant.numeric.float.csound\",\n regex: /(?:\\d+[Ee][+-]?\\d+)|(?:\\d+\\.\\d*|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?/\n }, {\n token: [\"storage.type.number.csound\", \"constant.numeric.integer.hexadecimal.csound\"],\n regex: /(0[Xx])([0-9A-Fa-f]+)/\n }, {\n token: \"constant.numeric.integer.decimal.csound\",\n regex: /\\d+/\n }\n ];\n this.bracedStringContents = [\n {\n token: \"constant.character.escape.csound\",\n regex: /\\\\(?:[\\\\abnrt\"]|[0-7]{1,3})/\n },\n {\n token: \"constant.character.placeholder.csound\",\n regex: /%[#0\\- +]*\\d*(?:\\.\\d+)?[diuoxXfFeEgGaAcs]/\n }, {\n token: \"constant.character.escape.csound\",\n regex: /%%/\n }\n ];\n this.quotedStringContents = [\n this.macroUses,\n this.bracedStringContents\n ];\n var start = [\n this.comments,\n {\n token: \"keyword.preprocessor.csound\",\n regex: /#(?:e(?:nd(?:if)?|lse)\\b|##)|@@?[ \\t]*\\d+/\n }, {\n token: \"keyword.preprocessor.csound\",\n regex: /#include/,\n push: [\n this.comments,\n {\n token: \"string.csound\",\n regex: /([^ \\t])(?:.*?\\1)/,\n next: \"pop\"\n }\n ]\n }, {\n token: \"keyword.preprocessor.csound\",\n regex: /#includestr/,\n push: [\n this.comments,\n {\n token: \"string.csound\",\n regex: /([^ \\t])(?:.*?\\1)/,\n next: \"pop\"\n }\n ]\n }, {\n token: \"keyword.preprocessor.csound\",\n regex: /#[ \\t]*define/,\n next: \"define directive\"\n }, {\n token: \"keyword.preprocessor.csound\",\n regex: /#(?:ifn?def|undef)\\b/,\n next: \"macro directive\"\n },\n this.macroUses\n ];\n this.$rules = {\n \"start\": start,\n \"define directive\": [\n this.comments,\n {\n token: \"entity.name.function.preprocessor.csound\",\n regex: /[A-Z_a-z]\\w*/\n }, {\n token: \"punctuation.definition.macro-parameter-name-list.begin.csound\",\n regex: /\\(/,\n next: \"macro parameter name list\"\n }, {\n token: \"punctuation.definition.macro.begin.csound\",\n regex: /#/,\n next: \"macro body\"\n }\n ],\n \"macro parameter name list\": [\n {\n token: \"variable.parameter.preprocessor.csound\",\n regex: /[A-Z_a-z]\\w*/\n }, {\n token: \"punctuation.definition.macro-parameter-name-list.end.csound\",\n regex: /\\)/,\n next: \"define directive\"\n }\n ],\n \"macro body\": [\n {\n token: \"constant.character.escape.csound\",\n regex: /\\\\#/\n }, {\n token: \"punctuation.definition.macro.end.csound\",\n regex: /#/,\n next: \"start\"\n },\n start\n ],\n \"macro directive\": [\n this.comments,\n {\n token: \"entity.name.function.preprocessor.csound\",\n regex: /[A-Z_a-z]\\w*/,\n next: \"start\"\n }\n ],\n \"macro parameter value list\": [\n {\n token: \"punctuation.definition.macro-parameter-value-list.end.csound\",\n regex: /\\)/,\n next: \"start\"\n }, {\n token: \"punctuation.definition.string.begin.csound\",\n regex: /\"/,\n next: \"macro parameter value quoted string\"\n }, this.pushRule({\n token: \"punctuation.macro-parameter-value-parenthetical.begin.csound\",\n regex: /\\(/,\n next: \"macro parameter value parenthetical\"\n }), {\n token: \"punctuation.macro-parameter-value-separator.csound\",\n regex: \"[#']\"\n }\n ],\n \"macro parameter value quoted string\": [\n {\n token: \"constant.character.escape.csound\",\n regex: /\\\\[#'()]/\n }, {\n token: \"invalid.illegal.csound\",\n regex: /[#'()]/\n }, {\n token: \"punctuation.definition.string.end.csound\",\n regex: /\"/,\n next: \"macro parameter value list\"\n },\n this.quotedStringContents,\n {\n defaultToken: \"string.quoted.csound\"\n }\n ],\n \"macro parameter value parenthetical\": [\n {\n token: \"constant.character.escape.csound\",\n regex: /\\\\\\)/\n }, this.popRule({\n token: \"punctuation.macro-parameter-value-parenthetical.end.csound\",\n regex: /\\)/\n }), this.pushRule({\n token: \"punctuation.macro-parameter-value-parenthetical.begin.csound\",\n regex: /\\(/,\n next: \"macro parameter value parenthetical\"\n }),\n start\n ]\n };\n};\noop.inherits(CsoundPreprocessorHighlightRules, TextHighlightRules);\n(function () {\n this.pushRule = function (params) {\n if (Array.isArray(params.next)) {\n for (var i = 0; i < params.next.length; i++) {\n params.next[i] = this.embeddedRulePrefix + params.next[i];\n }\n }\n return {\n regex: params.regex, onMatch: function (value, currentState, stack, line) {\n if (stack.length === 0)\n stack.push(currentState);\n if (Array.isArray(params.next)) {\n for (var i = 0; i < params.next.length; i++) {\n stack.push(params.next[i]);\n }\n }\n else {\n stack.push(params.next);\n }\n this.next = stack[stack.length - 1];\n return params.token;\n },\n get next() { return Array.isArray(params.next) ? params.next[params.next.length - 1] : params.next; },\n set next(next) {\n if (!Array.isArray(params.next)) {\n params.next = next;\n }\n },\n get token() { return params.token; }\n };\n };\n this.popRule = function (params) {\n if (params.next) {\n params.next = this.embeddedRulePrefix + params.next;\n }\n return {\n regex: params.regex, onMatch: function (value, currentState, stack, line) {\n stack.pop();\n if (params.next) {\n stack.push(params.next);\n this.next = stack[stack.length - 1];\n }\n else {\n this.next = stack.length > 1 ? stack[stack.length - 1] : stack.pop();\n }\n return params.token;\n }\n };\n };\n}).call(CsoundPreprocessorHighlightRules.prototype);\nexports.CsoundPreprocessorHighlightRules = CsoundPreprocessorHighlightRules;\n\n});\n\nace.define(\"ace/mode/csound_score_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/csound_preprocessor_highlight_rules\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar CsoundPreprocessorHighlightRules = require(\"./csound_preprocessor_highlight_rules\").CsoundPreprocessorHighlightRules;\nvar CsoundScoreHighlightRules = function (embeddedRulePrefix) {\n CsoundPreprocessorHighlightRules.call(this, embeddedRulePrefix);\n this.quotedStringContents.push({\n token: \"invalid.illegal.csound-score\",\n regex: /[^\"]*$/\n });\n var start = this.$rules.start;\n start.push({\n token: \"keyword.control.csound-score\",\n regex: /[aBbCdefiqstvxy]/\n }, {\n token: \"invalid.illegal.csound-score\",\n regex: /w/\n }, {\n token: \"constant.numeric.language.csound-score\",\n regex: /z/\n }, {\n token: [\"keyword.control.csound-score\", \"constant.numeric.integer.decimal.csound-score\"],\n regex: /([nNpP][pP])(\\d+)/\n }, {\n token: \"keyword.other.csound-score\",\n regex: /[mn]/,\n push: [\n {\n token: \"empty\",\n regex: /$/,\n next: \"pop\"\n },\n this.comments,\n {\n token: \"entity.name.label.csound-score\",\n regex: /[A-Z_a-z]\\w*/\n }\n ]\n }, {\n token: \"keyword.preprocessor.csound-score\",\n regex: /r\\b/,\n next: \"repeat section\"\n }, this.numbers, {\n token: \"keyword.operator.csound-score\",\n regex: \"[!+\\\\-*/^%&|<>#~.]\"\n }, this.pushRule({\n token: \"punctuation.definition.string.begin.csound-score\",\n regex: /\"/,\n next: \"quoted string\"\n }), this.pushRule({\n token: \"punctuation.braced-loop.begin.csound-score\",\n regex: /{/,\n next: \"loop after left brace\"\n }));\n this.addRules({\n \"repeat section\": [\n {\n token: \"empty\",\n regex: /$/,\n next: \"start\"\n },\n this.comments,\n {\n token: \"constant.numeric.integer.decimal.csound-score\",\n regex: /\\d+/,\n next: \"repeat section before label\"\n }\n ],\n \"repeat section before label\": [\n {\n token: \"empty\",\n regex: /$/,\n next: \"start\"\n },\n this.comments,\n {\n token: \"entity.name.label.csound-score\",\n regex: /[A-Z_a-z]\\w*/,\n next: \"start\"\n }\n ],\n \"quoted string\": [\n this.popRule({\n token: \"punctuation.definition.string.end.csound-score\",\n regex: /\"/\n }),\n this.quotedStringContents,\n {\n defaultToken: \"string.quoted.csound-score\"\n }\n ],\n \"loop after left brace\": [\n this.popRule({\n token: \"constant.numeric.integer.decimal.csound-score\",\n regex: /\\d+/,\n next: \"loop after repeat count\"\n }),\n this.comments,\n {\n token: \"invalid.illegal.csound\",\n regex: /\\S.*/\n }\n ],\n \"loop after repeat count\": [\n this.popRule({\n token: \"entity.name.function.preprocessor.csound-score\",\n regex: /[A-Z_a-z]\\w*\\b/,\n next: \"loop after macro name\"\n }),\n this.comments,\n {\n token: \"invalid.illegal.csound\",\n regex: /\\S.*/\n }\n ],\n \"loop after macro name\": [\n start,\n this.popRule({\n token: \"punctuation.braced-loop.end.csound-score\",\n regex: /}/\n })\n ]\n });\n this.normalizeRules();\n};\noop.inherits(CsoundScoreHighlightRules, CsoundPreprocessorHighlightRules);\nexports.CsoundScoreHighlightRules = CsoundScoreHighlightRules;\n\n});\n\nace.define(\"ace/mode/lua_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar TextHighlightRules = require(\"./text_highlight_rules\").TextHighlightRules;\nvar LuaHighlightRules = function () {\n var keywords = (\"break|do|else|elseif|end|for|function|if|in|local|repeat|\" +\n \"return|then|until|while|or|and|not\");\n var builtinConstants = (\"true|false|nil|_G|_VERSION\");\n var functions = (\n \"string|xpcall|package|tostring|print|os|unpack|require|\" +\n \"getfenv|setmetatable|next|assert|tonumber|io|rawequal|\" +\n \"collectgarbage|getmetatable|module|rawset|math|debug|\" +\n \"pcall|table|newproxy|type|coroutine|_G|select|gcinfo|\" +\n \"pairs|rawget|loadstring|ipairs|_VERSION|dofile|setfenv|\" +\n \"load|error|loadfile|\" +\n \"sub|upper|len|gfind|rep|find|match|char|dump|gmatch|\" +\n \"reverse|byte|format|gsub|lower|preload|loadlib|loaded|\" +\n \"loaders|cpath|config|path|seeall|exit|setlocale|date|\" +\n \"getenv|difftime|remove|time|clock|tmpname|rename|execute|\" +\n \"lines|write|close|flush|open|output|type|read|stderr|\" +\n \"stdin|input|stdout|popen|tmpfile|log|max|acos|huge|\" +\n \"ldexp|pi|cos|tanh|pow|deg|tan|cosh|sinh|random|randomseed|\" +\n \"frexp|ceil|floor|rad|abs|sqrt|modf|asin|min|mod|fmod|log10|\" +\n \"atan2|exp|sin|atan|getupvalue|debug|sethook|getmetatable|\" +\n \"gethook|setmetatable|setlocal|traceback|setfenv|getinfo|\" +\n \"setupvalue|getlocal|getregistry|getfenv|setn|insert|getn|\" +\n \"foreachi|maxn|foreach|concat|sort|remove|resume|yield|\" +\n \"status|wrap|create|running|\" +\n \"__add|__sub|__mod|__unm|__concat|__lt|__index|__call|__gc|__metatable|\" +\n \"__mul|__div|__pow|__len|__eq|__le|__newindex|__tostring|__mode|__tonumber\");\n var stdLibaries = (\"string|package|os|io|math|debug|table|coroutine\");\n var deprecatedIn5152 = (\"setn|foreach|foreachi|gcinfo|log10|maxn\");\n var keywordMapper = this.createKeywordMapper({\n \"keyword\": keywords,\n \"support.function\": functions,\n \"keyword.deprecated\": deprecatedIn5152,\n \"constant.library\": stdLibaries,\n \"constant.language\": builtinConstants,\n \"variable.language\": \"self\"\n }, \"identifier\");\n var decimalInteger = \"(?:(?:[1-9]\\\\d*)|(?:0))\";\n var hexInteger = \"(?:0[xX][\\\\dA-Fa-f]+)\";\n var integer = \"(?:\" + decimalInteger + \"|\" + hexInteger + \")\";\n var fraction = \"(?:\\\\.\\\\d+)\";\n var intPart = \"(?:\\\\d+)\";\n var pointFloat = \"(?:(?:\" + intPart + \"?\" + fraction + \")|(?:\" + intPart + \"\\\\.))\";\n var floatNumber = \"(?:\" + pointFloat + \")\";\n this.$rules = {\n \"start\": [{\n stateName: \"bracketedComment\",\n onMatch: function (value, currentState, stack) {\n stack.unshift(this.next, value.length - 2, currentState);\n return \"comment\";\n },\n regex: /\\-\\-\\[=*\\[/,\n next: [\n {\n onMatch: function (value, currentState, stack) {\n if (value.length == stack[1]) {\n stack.shift();\n stack.shift();\n this.next = stack.shift();\n }\n else {\n this.next = \"\";\n }\n return \"comment\";\n },\n regex: /\\]=*\\]/,\n next: \"start\"\n }, {\n defaultToken: \"comment\"\n }\n ]\n },\n {\n token: \"comment\",\n regex: \"\\\\-\\\\-.*$\"\n },\n {\n stateName: \"bracketedString\",\n onMatch: function (value, currentState, stack) {\n stack.unshift(this.next, value.length, currentState);\n return \"string.start\";\n },\n regex: /\\[=*\\[/,\n next: [\n {\n onMatch: function (value, currentState, stack) {\n if (value.length == stack[1]) {\n stack.shift();\n stack.shift();\n this.next = stack.shift();\n }\n else {\n this.next = \"\";\n }\n return \"string.end\";\n },\n regex: /\\]=*\\]/,\n next: \"start\"\n }, {\n defaultToken: \"string\"\n }\n ]\n },\n {\n token: \"string\",\n regex: '\"(?:[^\\\\\\\\]|\\\\\\\\.)*?\"'\n }, {\n token: \"string\",\n regex: \"'(?:[^\\\\\\\\]|\\\\\\\\.)*?'\"\n }, {\n token: \"constant.numeric\",\n regex: floatNumber\n }, {\n token: \"constant.numeric\",\n regex: integer + \"\\\\b\"\n }, {\n token: keywordMapper,\n regex: \"[a-zA-Z_$][a-zA-Z0-9_$]*\\\\b\"\n }, {\n token: \"keyword.operator\",\n regex: \"\\\\+|\\\\-|\\\\*|\\\\/|%|\\\\#|\\\\^|~|<|>|<=|=>|==|~=|=|\\\\:|\\\\.\\\\.\\\\.|\\\\.\\\\.\"\n }, {\n token: \"paren.lparen\",\n regex: \"[\\\\[\\\\(\\\\{]\"\n }, {\n token: \"paren.rparen\",\n regex: \"[\\\\]\\\\)\\\\}]\"\n }, {\n token: \"text\",\n regex: \"\\\\s+|\\\\w+\"\n }]\n };\n this.normalizeRules();\n};\noop.inherits(LuaHighlightRules, TextHighlightRules);\nexports.LuaHighlightRules = LuaHighlightRules;\n\n});\n\nace.define(\"ace/mode/python_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], function(require, exports, module){/*\n * TODO: python delimiters\n */\n\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar TextHighlightRules = require(\"./text_highlight_rules\").TextHighlightRules;\nvar PythonHighlightRules = function () {\n var keywords = (\"and|as|assert|break|class|continue|def|del|elif|else|except|exec|\" +\n \"finally|for|from|global|if|import|in|is|lambda|not|or|pass|print|\" +\n \"raise|return|try|while|with|yield|async|await|nonlocal\");\n var builtinConstants = (\"True|False|None|NotImplemented|Ellipsis|__debug__\");\n var builtinFunctions = (\"abs|divmod|input|open|staticmethod|all|enumerate|int|ord|str|any|\" +\n \"eval|isinstance|pow|sum|basestring|execfile|issubclass|print|super|\" +\n \"binfile|bin|iter|property|tuple|bool|filter|len|range|type|bytearray|\" +\n \"float|list|raw_input|unichr|callable|format|locals|reduce|unicode|\" +\n \"chr|frozenset|long|reload|vars|classmethod|getattr|map|repr|xrange|\" +\n \"cmp|globals|max|reversed|zip|compile|hasattr|memoryview|round|\" +\n \"__import__|complex|hash|min|apply|delattr|help|next|setattr|set|\" +\n \"buffer|dict|hex|object|slice|coerce|dir|id|oct|sorted|intern|\" +\n \"ascii|breakpoint|bytes\");\n var keywordMapper = this.createKeywordMapper({\n \"invalid.deprecated\": \"debugger\",\n \"support.function\": builtinFunctions,\n \"variable.language\": \"self|cls\",\n \"constant.language\": builtinConstants,\n \"keyword\": keywords\n }, \"identifier\");\n var strPre = \"[uU]?\";\n var strRawPre = \"[rR]\";\n var strFormatPre = \"[fF]\";\n var strRawFormatPre = \"(?:[rR][fF]|[fF][rR])\";\n var decimalInteger = \"(?:(?:[1-9]\\\\d*)|(?:0))\";\n var octInteger = \"(?:0[oO]?[0-7]+)\";\n var hexInteger = \"(?:0[xX][\\\\dA-Fa-f]+)\";\n var binInteger = \"(?:0[bB][01]+)\";\n var integer = \"(?:\" + decimalInteger + \"|\" + octInteger + \"|\" + hexInteger + \"|\" + binInteger + \")\";\n var exponent = \"(?:[eE][+-]?\\\\d+)\";\n var fraction = \"(?:\\\\.\\\\d+)\";\n var intPart = \"(?:\\\\d+)\";\n var pointFloat = \"(?:(?:\" + intPart + \"?\" + fraction + \")|(?:\" + intPart + \"\\\\.))\";\n var exponentFloat = \"(?:(?:\" + pointFloat + \"|\" + intPart + \")\" + exponent + \")\";\n var floatNumber = \"(?:\" + exponentFloat + \"|\" + pointFloat + \")\";\n var stringEscape = \"\\\\\\\\(x[0-9A-Fa-f]{2}|[0-7]{3}|[\\\\\\\\abfnrtv'\\\"]|U[0-9A-Fa-f]{8}|u[0-9A-Fa-f]{4})\";\n this.$rules = {\n \"start\": [{\n token: \"comment\",\n regex: \"#.*$\"\n }, {\n token: \"string\",\n regex: strPre + '\"{3}',\n next: \"qqstring3\"\n }, {\n token: \"string\",\n regex: strPre + '\"(?=.)',\n next: \"qqstring\"\n }, {\n token: \"string\",\n regex: strPre + \"'{3}\",\n next: \"qstring3\"\n }, {\n token: \"string\",\n regex: strPre + \"'(?=.)\",\n next: \"qstring\"\n }, {\n token: \"string\",\n regex: strRawPre + '\"{3}',\n next: \"rawqqstring3\"\n }, {\n token: \"string\",\n regex: strRawPre + '\"(?=.)',\n next: \"rawqqstring\"\n }, {\n token: \"string\",\n regex: strRawPre + \"'{3}\",\n next: \"rawqstring3\"\n }, {\n token: \"string\",\n regex: strRawPre + \"'(?=.)\",\n next: \"rawqstring\"\n }, {\n token: \"string\",\n regex: strFormatPre + '\"{3}',\n next: \"fqqstring3\"\n }, {\n token: \"string\",\n regex: strFormatPre + '\"(?=.)',\n next: \"fqqstring\"\n }, {\n token: \"string\",\n regex: strFormatPre + \"'{3}\",\n next: \"fqstring3\"\n }, {\n token: \"string\",\n regex: strFormatPre + \"'(?=.)\",\n next: \"fqstring\"\n }, {\n token: \"string\",\n regex: strRawFormatPre + '\"{3}',\n next: \"rfqqstring3\"\n }, {\n token: \"string\",\n regex: strRawFormatPre + '\"(?=.)',\n next: \"rfqqstring\"\n }, {\n token: \"string\",\n regex: strRawFormatPre + \"'{3}\",\n next: \"rfqstring3\"\n }, {\n token: \"string\",\n regex: strRawFormatPre + \"'(?=.)\",\n next: \"rfqstring\"\n }, {\n token: \"keyword.operator\",\n regex: \"\\\\+|\\\\-|\\\\*|\\\\*\\\\*|\\\\/|\\\\/\\\\/|%|@|<<|>>|&|\\\\||\\\\^|~|<|>|<=|=>|==|!=|<>|=\"\n }, {\n token: \"punctuation\",\n regex: \",|:|;|\\\\->|\\\\+=|\\\\-=|\\\\*=|\\\\/=|\\\\/\\\\/=|%=|@=|&=|\\\\|=|^=|>>=|<<=|\\\\*\\\\*=\"\n }, {\n token: \"paren.lparen\",\n regex: \"[\\\\[\\\\(\\\\{]\"\n }, {\n token: \"paren.rparen\",\n regex: \"[\\\\]\\\\)\\\\}]\"\n }, {\n token: [\"keyword\", \"text\", \"entity.name.function\"],\n regex: \"(def|class)(\\\\s+)([\\\\u00BF-\\\\u1FFF\\\\u2C00-\\\\uD7FF\\\\w]+)\"\n }, {\n token: \"text\",\n regex: \"\\\\s+\"\n }, {\n include: \"constants\"\n }],\n \"qqstring3\": [{\n token: \"constant.language.escape\",\n regex: stringEscape\n }, {\n token: \"string\",\n regex: '\"{3}',\n next: \"start\"\n }, {\n defaultToken: \"string\"\n }],\n \"qstring3\": [{\n token: \"constant.language.escape\",\n regex: stringEscape\n }, {\n token: \"string\",\n regex: \"'{3}\",\n next: \"start\"\n }, {\n defaultToken: \"string\"\n }],\n \"qqstring\": [{\n token: \"constant.language.escape\",\n regex: stringEscape\n }, {\n token: \"string\",\n regex: \"\\\\\\\\$\",\n next: \"qqstring\"\n }, {\n token: \"string\",\n regex: '\"|$',\n next: \"start\"\n }, {\n defaultToken: \"string\"\n }],\n \"qstring\": [{\n token: \"constant.language.escape\",\n regex: stringEscape\n }, {\n token: \"string\",\n regex: \"\\\\\\\\$\",\n next: \"qstring\"\n }, {\n token: \"string\",\n regex: \"'|$\",\n next: \"start\"\n }, {\n defaultToken: \"string\"\n }],\n \"rawqqstring3\": [{\n token: \"string\",\n regex: '\"{3}',\n next: \"start\"\n }, {\n defaultToken: \"string\"\n }],\n \"rawqstring3\": [{\n token: \"string\",\n regex: \"'{3}\",\n next: \"start\"\n }, {\n defaultToken: \"string\"\n }],\n \"rawqqstring\": [{\n token: \"string\",\n regex: \"\\\\\\\\$\",\n next: \"rawqqstring\"\n }, {\n token: \"string\",\n regex: '\"|$',\n next: \"start\"\n }, {\n defaultToken: \"string\"\n }],\n \"rawqstring\": [{\n token: \"string\",\n regex: \"\\\\\\\\$\",\n next: \"rawqstring\"\n }, {\n token: \"string\",\n regex: \"'|$\",\n next: \"start\"\n }, {\n defaultToken: \"string\"\n }],\n \"fqqstring3\": [{\n token: \"constant.language.escape\",\n regex: stringEscape\n }, {\n token: \"string\",\n regex: '\"{3}',\n next: \"start\"\n }, {\n token: \"paren.lparen\",\n regex: \"{\",\n push: \"fqstringParRules\"\n }, {\n defaultToken: \"string\"\n }],\n \"fqstring3\": [{\n token: \"constant.language.escape\",\n regex: stringEscape\n }, {\n token: \"string\",\n regex: \"'{3}\",\n next: \"start\"\n }, {\n token: \"paren.lparen\",\n regex: \"{\",\n push: \"fqstringParRules\"\n }, {\n defaultToken: \"string\"\n }],\n \"fqqstring\": [{\n token: \"constant.language.escape\",\n regex: stringEscape\n }, {\n token: \"string\",\n regex: \"\\\\\\\\$\",\n next: \"fqqstring\"\n }, {\n token: \"string\",\n regex: '\"|$',\n next: \"start\"\n }, {\n token: \"paren.lparen\",\n regex: \"{\",\n push: \"fqstringParRules\"\n }, {\n defaultToken: \"string\"\n }],\n \"fqstring\": [{\n token: \"constant.language.escape\",\n regex: stringEscape\n }, {\n token: \"string\",\n regex: \"'|$\",\n next: \"start\"\n }, {\n token: \"paren.lparen\",\n regex: \"{\",\n push: \"fqstringParRules\"\n }, {\n defaultToken: \"string\"\n }],\n \"rfqqstring3\": [{\n token: \"string\",\n regex: '\"{3}',\n next: \"start\"\n }, {\n token: \"paren.lparen\",\n regex: \"{\",\n push: \"fqstringParRules\"\n }, {\n defaultToken: \"string\"\n }],\n \"rfqstring3\": [{\n token: \"string\",\n regex: \"'{3}\",\n next: \"start\"\n }, {\n token: \"paren.lparen\",\n regex: \"{\",\n push: \"fqstringParRules\"\n }, {\n defaultToken: \"string\"\n }],\n \"rfqqstring\": [{\n token: \"string\",\n regex: \"\\\\\\\\$\",\n next: \"rfqqstring\"\n }, {\n token: \"string\",\n regex: '\"|$',\n next: \"start\"\n }, {\n token: \"paren.lparen\",\n regex: \"{\",\n push: \"fqstringParRules\"\n }, {\n defaultToken: \"string\"\n }],\n \"rfqstring\": [{\n token: \"string\",\n regex: \"'|$\",\n next: \"start\"\n }, {\n token: \"paren.lparen\",\n regex: \"{\",\n push: \"fqstringParRules\"\n }, {\n defaultToken: \"string\"\n }],\n \"fqstringParRules\": [{\n token: \"paren.lparen\",\n regex: \"[\\\\[\\\\(]\"\n }, {\n token: \"paren.rparen\",\n regex: \"[\\\\]\\\\)]\"\n }, {\n token: \"string\",\n regex: \"\\\\s+\"\n }, {\n token: \"string\",\n regex: \"'[^']*'\"\n }, {\n token: \"string\",\n regex: '\"[^\"]*\"'\n }, {\n token: \"function.support\",\n regex: \"(!s|!r|!a)\"\n }, {\n include: \"constants\"\n }, {\n token: 'paren.rparen',\n regex: \"}\",\n next: 'pop'\n }, {\n token: 'paren.lparen',\n regex: \"{\",\n push: \"fqstringParRules\"\n }],\n \"constants\": [{\n token: \"constant.numeric\",\n regex: \"(?:\" + floatNumber + \"|\\\\d+)[jJ]\\\\b\"\n }, {\n token: \"constant.numeric\",\n regex: floatNumber\n }, {\n token: \"constant.numeric\",\n regex: integer + \"[lL]\\\\b\"\n }, {\n token: \"constant.numeric\",\n regex: integer + \"\\\\b\"\n }, {\n token: [\"punctuation\", \"function.support\"],\n regex: \"(\\\\.)([a-zA-Z_]+)\\\\b\"\n }, {\n token: keywordMapper,\n regex: \"[a-zA-Z_$][a-zA-Z0-9_$]*\\\\b\"\n }]\n };\n this.normalizeRules();\n};\noop.inherits(PythonHighlightRules, TextHighlightRules);\nexports.PythonHighlightRules = PythonHighlightRules;\n\n});\n\nace.define(\"ace/mode/csound_orchestra_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/lang\",\"ace/lib/oop\",\"ace/mode/csound_preprocessor_highlight_rules\",\"ace/mode/csound_score_highlight_rules\",\"ace/mode/lua_highlight_rules\",\"ace/mode/python_highlight_rules\"], function(require, exports, module){\"use strict\";\nvar lang = require(\"../lib/lang\");\nvar oop = require(\"../lib/oop\");\nvar CsoundPreprocessorHighlightRules = require(\"./csound_preprocessor_highlight_rules\").CsoundPreprocessorHighlightRules;\nvar CsoundScoreHighlightRules = require(\"./csound_score_highlight_rules\").CsoundScoreHighlightRules;\nvar LuaHighlightRules = require(\"./lua_highlight_rules\").LuaHighlightRules;\nvar PythonHighlightRules = require(\"./python_highlight_rules\").PythonHighlightRules;\nvar CsoundOrchestraHighlightRules = function (embeddedRulePrefix) {\n CsoundPreprocessorHighlightRules.call(this, embeddedRulePrefix);\n var opcodes = [\n \"ATSadd\",\n \"ATSaddnz\",\n \"ATSbufread\",\n \"ATScross\",\n \"ATSinfo\",\n \"ATSinterpread\",\n \"ATSpartialtap\",\n \"ATSread\",\n \"ATSreadnz\",\n \"ATSsinnoi\",\n \"FLbox\",\n \"FLbutBank\",\n \"FLbutton\",\n \"FLcloseButton\",\n \"FLcolor\",\n \"FLcolor2\",\n \"FLcount\",\n \"FLexecButton\",\n \"FLgetsnap\",\n \"FLgroup\",\n \"FLgroupEnd\",\n \"FLgroup_end\",\n \"FLhide\",\n \"FLhvsBox\",\n \"FLhvsBoxSetValue\",\n \"FLjoy\",\n \"FLkeyIn\",\n \"FLknob\",\n \"FLlabel\",\n \"FLloadsnap\",\n \"FLmouse\",\n \"FLpack\",\n \"FLpackEnd\",\n \"FLpack_end\",\n \"FLpanel\",\n \"FLpanelEnd\",\n \"FLpanel_end\",\n \"FLprintk\",\n \"FLprintk2\",\n \"FLroller\",\n \"FLrun\",\n \"FLsavesnap\",\n \"FLscroll\",\n \"FLscrollEnd\",\n \"FLscroll_end\",\n \"FLsetAlign\",\n \"FLsetBox\",\n \"FLsetColor\",\n \"FLsetColor2\",\n \"FLsetFont\",\n \"FLsetPosition\",\n \"FLsetSize\",\n \"FLsetSnapGroup\",\n \"FLsetText\",\n \"FLsetTextColor\",\n \"FLsetTextSize\",\n \"FLsetTextType\",\n \"FLsetVal\",\n \"FLsetVal_i\",\n \"FLsetVali\",\n \"FLsetsnap\",\n \"FLshow\",\n \"FLslidBnk\",\n \"FLslidBnk2\",\n \"FLslidBnk2Set\",\n \"FLslidBnk2Setk\",\n \"FLslidBnkGetHandle\",\n \"FLslidBnkSet\",\n \"FLslidBnkSetk\",\n \"FLslider\",\n \"FLtabs\",\n \"FLtabsEnd\",\n \"FLtabs_end\",\n \"FLtext\",\n \"FLupdate\",\n \"FLvalue\",\n \"FLvkeybd\",\n \"FLvslidBnk\",\n \"FLvslidBnk2\",\n \"FLxyin\",\n \"JackoAudioIn\",\n \"JackoAudioInConnect\",\n \"JackoAudioOut\",\n \"JackoAudioOutConnect\",\n \"JackoFreewheel\",\n \"JackoInfo\",\n \"JackoInit\",\n \"JackoMidiInConnect\",\n \"JackoMidiOut\",\n \"JackoMidiOutConnect\",\n \"JackoNoteOut\",\n \"JackoOn\",\n \"JackoTransport\",\n \"K35_hpf\",\n \"K35_lpf\",\n \"MixerClear\",\n \"MixerGetLevel\",\n \"MixerReceive\",\n \"MixerSend\",\n \"MixerSetLevel\",\n \"MixerSetLevel_i\",\n \"OSCbundle\",\n \"OSCcount\",\n \"OSCinit\",\n \"OSCinitM\",\n \"OSClisten\",\n \"OSCraw\",\n \"OSCsend\",\n \"OSCsend_lo\",\n \"S\",\n \"STKBandedWG\",\n \"STKBeeThree\",\n \"STKBlowBotl\",\n \"STKBlowHole\",\n \"STKBowed\",\n \"STKBrass\",\n \"STKClarinet\",\n \"STKDrummer\",\n \"STKFMVoices\",\n \"STKFlute\",\n \"STKHevyMetl\",\n \"STKMandolin\",\n \"STKModalBar\",\n \"STKMoog\",\n \"STKPercFlut\",\n \"STKPlucked\",\n \"STKResonate\",\n \"STKRhodey\",\n \"STKSaxofony\",\n \"STKShakers\",\n \"STKSimple\",\n \"STKSitar\",\n \"STKStifKarp\",\n \"STKTubeBell\",\n \"STKVoicForm\",\n \"STKWhistle\",\n \"STKWurley\",\n \"a\",\n \"abs\",\n \"active\",\n \"adsr\",\n \"adsyn\",\n \"adsynt\",\n \"adsynt2\",\n \"aftouch\",\n \"allpole\",\n \"alpass\",\n \"alwayson\",\n \"ampdb\",\n \"ampdbfs\",\n \"ampmidi\",\n \"ampmidicurve\",\n \"ampmidid\",\n \"apoleparams\",\n \"arduinoRead\",\n \"arduinoReadF\",\n \"arduinoStart\",\n \"arduinoStop\",\n \"areson\",\n \"aresonk\",\n \"atone\",\n \"atonek\",\n \"atonex\",\n \"autocorr\",\n \"babo\",\n \"balance\",\n \"balance2\",\n \"bamboo\",\n \"barmodel\",\n \"bbcutm\",\n \"bbcuts\",\n \"betarand\",\n \"bexprnd\",\n \"bformdec1\",\n \"bformdec2\",\n \"bformenc1\",\n \"binit\",\n \"biquad\",\n \"biquada\",\n \"birnd\",\n \"bob\",\n \"bpf\",\n \"bpfcos\",\n \"bqrez\",\n \"butbp\",\n \"butbr\",\n \"buthp\",\n \"butlp\",\n \"butterbp\",\n \"butterbr\",\n \"butterhp\",\n \"butterlp\",\n \"button\",\n \"buzz\",\n \"c2r\",\n \"cabasa\",\n \"cauchy\",\n \"cauchyi\",\n \"cbrt\",\n \"ceil\",\n \"cell\",\n \"cent\",\n \"centroid\",\n \"ceps\",\n \"cepsinv\",\n \"chanctrl\",\n \"changed\",\n \"changed2\",\n \"chani\",\n \"chano\",\n \"chebyshevpoly\",\n \"checkbox\",\n \"chn_S\",\n \"chn_a\",\n \"chn_k\",\n \"chnclear\",\n \"chnexport\",\n \"chnget\",\n \"chngeta\",\n \"chngeti\",\n \"chngetk\",\n \"chngetks\",\n \"chngets\",\n \"chnmix\",\n \"chnparams\",\n \"chnset\",\n \"chnseta\",\n \"chnseti\",\n \"chnsetk\",\n \"chnsetks\",\n \"chnsets\",\n \"chuap\",\n \"clear\",\n \"clfilt\",\n \"clip\",\n \"clockoff\",\n \"clockon\",\n \"cmp\",\n \"cmplxprod\",\n \"cntCreate\",\n \"cntCycles\",\n \"cntDelete\",\n \"cntDelete_i\",\n \"cntRead\",\n \"cntReset\",\n \"cntState\",\n \"comb\",\n \"combinv\",\n \"compilecsd\",\n \"compileorc\",\n \"compilestr\",\n \"compress\",\n \"compress2\",\n \"connect\",\n \"control\",\n \"convle\",\n \"convolve\",\n \"copya2ftab\",\n \"copyf2array\",\n \"cos\",\n \"cosh\",\n \"cosinv\",\n \"cosseg\",\n \"cossegb\",\n \"cossegr\",\n \"count\",\n \"count_i\",\n \"cps2pch\",\n \"cpsmidi\",\n \"cpsmidib\",\n \"cpsmidinn\",\n \"cpsoct\",\n \"cpspch\",\n \"cpstmid\",\n \"cpstun\",\n \"cpstuni\",\n \"cpsxpch\",\n \"cpumeter\",\n \"cpuprc\",\n \"cross2\",\n \"crossfm\",\n \"crossfmi\",\n \"crossfmpm\",\n \"crossfmpmi\",\n \"crosspm\",\n \"crosspmi\",\n \"crunch\",\n \"ctlchn\",\n \"ctrl14\",\n \"ctrl21\",\n \"ctrl7\",\n \"ctrlinit\",\n \"ctrlpreset\",\n \"ctrlprint\",\n \"ctrlprintpresets\",\n \"ctrlsave\",\n \"ctrlselect\",\n \"cuserrnd\",\n \"dam\",\n \"date\",\n \"dates\",\n \"db\",\n \"dbamp\",\n \"dbfsamp\",\n \"dcblock\",\n \"dcblock2\",\n \"dconv\",\n \"dct\",\n \"dctinv\",\n \"deinterleave\",\n \"delay\",\n \"delay1\",\n \"delayk\",\n \"delayr\",\n \"delayw\",\n \"deltap\",\n \"deltap3\",\n \"deltapi\",\n \"deltapn\",\n \"deltapx\",\n \"deltapxw\",\n \"denorm\",\n \"diff\",\n \"diode_ladder\",\n \"directory\",\n \"diskgrain\",\n \"diskin\",\n \"diskin2\",\n \"dispfft\",\n \"display\",\n \"distort\",\n \"distort1\",\n \"divz\",\n \"doppler\",\n \"dot\",\n \"downsamp\",\n \"dripwater\",\n \"dssiactivate\",\n \"dssiaudio\",\n \"dssictls\",\n \"dssiinit\",\n \"dssilist\",\n \"dumpk\",\n \"dumpk2\",\n \"dumpk3\",\n \"dumpk4\",\n \"duserrnd\",\n \"dust\",\n \"dust2\",\n \"elapsedcycles\",\n \"elapsedtime\",\n \"envlpx\",\n \"envlpxr\",\n \"ephasor\",\n \"eqfil\",\n \"evalstr\",\n \"event\",\n \"event_i\",\n \"eventcycles\",\n \"eventtime\",\n \"exciter\",\n \"exitnow\",\n \"exp\",\n \"expcurve\",\n \"expon\",\n \"exprand\",\n \"exprandi\",\n \"expseg\",\n \"expsega\",\n \"expsegb\",\n \"expsegba\",\n \"expsegr\",\n \"fareylen\",\n \"fareyleni\",\n \"faustaudio\",\n \"faustcompile\",\n \"faustctl\",\n \"faustdsp\",\n \"faustgen\",\n \"faustplay\",\n \"fft\",\n \"fftinv\",\n \"ficlose\",\n \"filebit\",\n \"filelen\",\n \"filenchnls\",\n \"filepeak\",\n \"filescal\",\n \"filesr\",\n \"filevalid\",\n \"fillarray\",\n \"filter2\",\n \"fin\",\n \"fini\",\n \"fink\",\n \"fiopen\",\n \"flanger\",\n \"flashtxt\",\n \"flooper\",\n \"flooper2\",\n \"floor\",\n \"fluidAllOut\",\n \"fluidCCi\",\n \"fluidCCk\",\n \"fluidControl\",\n \"fluidEngine\",\n \"fluidInfo\",\n \"fluidLoad\",\n \"fluidNote\",\n \"fluidOut\",\n \"fluidProgramSelect\",\n \"fluidSetInterpMethod\",\n \"fmanal\",\n \"fmax\",\n \"fmb3\",\n \"fmbell\",\n \"fmin\",\n \"fmmetal\",\n \"fmod\",\n \"fmpercfl\",\n \"fmrhode\",\n \"fmvoice\",\n \"fmwurlie\",\n \"fof\",\n \"fof2\",\n \"fofilter\",\n \"fog\",\n \"fold\",\n \"follow\",\n \"follow2\",\n \"foscil\",\n \"foscili\",\n \"fout\",\n \"fouti\",\n \"foutir\",\n \"foutk\",\n \"fprintks\",\n \"fprints\",\n \"frac\",\n \"fractalnoise\",\n \"framebuffer\",\n \"freeverb\",\n \"ftaudio\",\n \"ftchnls\",\n \"ftconv\",\n \"ftcps\",\n \"ftexists\",\n \"ftfree\",\n \"ftgen\",\n \"ftgenonce\",\n \"ftgentmp\",\n \"ftlen\",\n \"ftload\",\n \"ftloadk\",\n \"ftlptim\",\n \"ftmorf\",\n \"ftom\",\n \"ftprint\",\n \"ftresize\",\n \"ftresizei\",\n \"ftsamplebank\",\n \"ftsave\",\n \"ftsavek\",\n \"ftset\",\n \"ftslice\",\n \"ftslicei\",\n \"ftsr\",\n \"gain\",\n \"gainslider\",\n \"gauss\",\n \"gaussi\",\n \"gausstrig\",\n \"gbuzz\",\n \"genarray\",\n \"genarray_i\",\n \"gendy\",\n \"gendyc\",\n \"gendyx\",\n \"getcfg\",\n \"getcol\",\n \"getftargs\",\n \"getrow\",\n \"getseed\",\n \"gogobel\",\n \"grain\",\n \"grain2\",\n \"grain3\",\n \"granule\",\n \"gtadsr\",\n \"gtf\",\n \"guiro\",\n \"harmon\",\n \"harmon2\",\n \"harmon3\",\n \"harmon4\",\n \"hdf5read\",\n \"hdf5write\",\n \"hilbert\",\n \"hilbert2\",\n \"hrtfearly\",\n \"hrtfmove\",\n \"hrtfmove2\",\n \"hrtfreverb\",\n \"hrtfstat\",\n \"hsboscil\",\n \"hvs1\",\n \"hvs2\",\n \"hvs3\",\n \"hypot\",\n \"i\",\n \"ihold\",\n \"imagecreate\",\n \"imagefree\",\n \"imagegetpixel\",\n \"imageload\",\n \"imagesave\",\n \"imagesetpixel\",\n \"imagesize\",\n \"in\",\n \"in32\",\n \"inch\",\n \"inh\",\n \"init\",\n \"initc14\",\n \"initc21\",\n \"initc7\",\n \"inleta\",\n \"inletf\",\n \"inletk\",\n \"inletkid\",\n \"inletv\",\n \"ino\",\n \"inq\",\n \"inrg\",\n \"ins\",\n \"insglobal\",\n \"insremot\",\n \"int\",\n \"integ\",\n \"interleave\",\n \"interp\",\n \"invalue\",\n \"inx\",\n \"inz\",\n \"jacktransport\",\n \"jitter\",\n \"jitter2\",\n \"joystick\",\n \"jspline\",\n \"k\",\n \"la_i_add_mc\",\n \"la_i_add_mr\",\n \"la_i_add_vc\",\n \"la_i_add_vr\",\n \"la_i_assign_mc\",\n \"la_i_assign_mr\",\n \"la_i_assign_t\",\n \"la_i_assign_vc\",\n \"la_i_assign_vr\",\n \"la_i_conjugate_mc\",\n \"la_i_conjugate_mr\",\n \"la_i_conjugate_vc\",\n \"la_i_conjugate_vr\",\n \"la_i_distance_vc\",\n \"la_i_distance_vr\",\n \"la_i_divide_mc\",\n \"la_i_divide_mr\",\n \"la_i_divide_vc\",\n \"la_i_divide_vr\",\n \"la_i_dot_mc\",\n \"la_i_dot_mc_vc\",\n \"la_i_dot_mr\",\n \"la_i_dot_mr_vr\",\n \"la_i_dot_vc\",\n \"la_i_dot_vr\",\n \"la_i_get_mc\",\n \"la_i_get_mr\",\n \"la_i_get_vc\",\n \"la_i_get_vr\",\n \"la_i_invert_mc\",\n \"la_i_invert_mr\",\n \"la_i_lower_solve_mc\",\n \"la_i_lower_solve_mr\",\n \"la_i_lu_det_mc\",\n \"la_i_lu_det_mr\",\n \"la_i_lu_factor_mc\",\n \"la_i_lu_factor_mr\",\n \"la_i_lu_solve_mc\",\n \"la_i_lu_solve_mr\",\n \"la_i_mc_create\",\n \"la_i_mc_set\",\n \"la_i_mr_create\",\n \"la_i_mr_set\",\n \"la_i_multiply_mc\",\n \"la_i_multiply_mr\",\n \"la_i_multiply_vc\",\n \"la_i_multiply_vr\",\n \"la_i_norm1_mc\",\n \"la_i_norm1_mr\",\n \"la_i_norm1_vc\",\n \"la_i_norm1_vr\",\n \"la_i_norm_euclid_mc\",\n \"la_i_norm_euclid_mr\",\n \"la_i_norm_euclid_vc\",\n \"la_i_norm_euclid_vr\",\n \"la_i_norm_inf_mc\",\n \"la_i_norm_inf_mr\",\n \"la_i_norm_inf_vc\",\n \"la_i_norm_inf_vr\",\n \"la_i_norm_max_mc\",\n \"la_i_norm_max_mr\",\n \"la_i_print_mc\",\n \"la_i_print_mr\",\n \"la_i_print_vc\",\n \"la_i_print_vr\",\n \"la_i_qr_eigen_mc\",\n \"la_i_qr_eigen_mr\",\n \"la_i_qr_factor_mc\",\n \"la_i_qr_factor_mr\",\n \"la_i_qr_sym_eigen_mc\",\n \"la_i_qr_sym_eigen_mr\",\n \"la_i_random_mc\",\n \"la_i_random_mr\",\n \"la_i_random_vc\",\n \"la_i_random_vr\",\n \"la_i_size_mc\",\n \"la_i_size_mr\",\n \"la_i_size_vc\",\n \"la_i_size_vr\",\n \"la_i_subtract_mc\",\n \"la_i_subtract_mr\",\n \"la_i_subtract_vc\",\n \"la_i_subtract_vr\",\n \"la_i_t_assign\",\n \"la_i_trace_mc\",\n \"la_i_trace_mr\",\n \"la_i_transpose_mc\",\n \"la_i_transpose_mr\",\n \"la_i_upper_solve_mc\",\n \"la_i_upper_solve_mr\",\n \"la_i_vc_create\",\n \"la_i_vc_set\",\n \"la_i_vr_create\",\n \"la_i_vr_set\",\n \"la_k_a_assign\",\n \"la_k_add_mc\",\n \"la_k_add_mr\",\n \"la_k_add_vc\",\n \"la_k_add_vr\",\n \"la_k_assign_a\",\n \"la_k_assign_f\",\n \"la_k_assign_mc\",\n \"la_k_assign_mr\",\n \"la_k_assign_t\",\n \"la_k_assign_vc\",\n \"la_k_assign_vr\",\n \"la_k_conjugate_mc\",\n \"la_k_conjugate_mr\",\n \"la_k_conjugate_vc\",\n \"la_k_conjugate_vr\",\n \"la_k_current_f\",\n \"la_k_current_vr\",\n \"la_k_distance_vc\",\n \"la_k_distance_vr\",\n \"la_k_divide_mc\",\n \"la_k_divide_mr\",\n \"la_k_divide_vc\",\n \"la_k_divide_vr\",\n \"la_k_dot_mc\",\n \"la_k_dot_mc_vc\",\n \"la_k_dot_mr\",\n \"la_k_dot_mr_vr\",\n \"la_k_dot_vc\",\n \"la_k_dot_vr\",\n \"la_k_f_assign\",\n \"la_k_get_mc\",\n \"la_k_get_mr\",\n \"la_k_get_vc\",\n \"la_k_get_vr\",\n \"la_k_invert_mc\",\n \"la_k_invert_mr\",\n \"la_k_lower_solve_mc\",\n \"la_k_lower_solve_mr\",\n \"la_k_lu_det_mc\",\n \"la_k_lu_det_mr\",\n \"la_k_lu_factor_mc\",\n \"la_k_lu_factor_mr\",\n \"la_k_lu_solve_mc\",\n \"la_k_lu_solve_mr\",\n \"la_k_mc_set\",\n \"la_k_mr_set\",\n \"la_k_multiply_mc\",\n \"la_k_multiply_mr\",\n \"la_k_multiply_vc\",\n \"la_k_multiply_vr\",\n \"la_k_norm1_mc\",\n \"la_k_norm1_mr\",\n \"la_k_norm1_vc\",\n \"la_k_norm1_vr\",\n \"la_k_norm_euclid_mc\",\n \"la_k_norm_euclid_mr\",\n \"la_k_norm_euclid_vc\",\n \"la_k_norm_euclid_vr\",\n \"la_k_norm_inf_mc\",\n \"la_k_norm_inf_mr\",\n \"la_k_norm_inf_vc\",\n \"la_k_norm_inf_vr\",\n \"la_k_norm_max_mc\",\n \"la_k_norm_max_mr\",\n \"la_k_qr_eigen_mc\",\n \"la_k_qr_eigen_mr\",\n \"la_k_qr_factor_mc\",\n \"la_k_qr_factor_mr\",\n \"la_k_qr_sym_eigen_mc\",\n \"la_k_qr_sym_eigen_mr\",\n \"la_k_random_mc\",\n \"la_k_random_mr\",\n \"la_k_random_vc\",\n \"la_k_random_vr\",\n \"la_k_subtract_mc\",\n \"la_k_subtract_mr\",\n \"la_k_subtract_vc\",\n \"la_k_subtract_vr\",\n \"la_k_t_assign\",\n \"la_k_trace_mc\",\n \"la_k_trace_mr\",\n \"la_k_upper_solve_mc\",\n \"la_k_upper_solve_mr\",\n \"la_k_vc_set\",\n \"la_k_vr_set\",\n \"lag\",\n \"lagud\",\n \"lastcycle\",\n \"lenarray\",\n \"lfo\",\n \"lfsr\",\n \"limit\",\n \"limit1\",\n \"lincos\",\n \"line\",\n \"linen\",\n \"linenr\",\n \"lineto\",\n \"link_beat_force\",\n \"link_beat_get\",\n \"link_beat_request\",\n \"link_create\",\n \"link_enable\",\n \"link_is_enabled\",\n \"link_metro\",\n \"link_peers\",\n \"link_tempo_get\",\n \"link_tempo_set\",\n \"linlin\",\n \"linrand\",\n \"linseg\",\n \"linsegb\",\n \"linsegr\",\n \"liveconv\",\n \"locsend\",\n \"locsig\",\n \"log\",\n \"log10\",\n \"log2\",\n \"logbtwo\",\n \"logcurve\",\n \"loopseg\",\n \"loopsegp\",\n \"looptseg\",\n \"loopxseg\",\n \"lorenz\",\n \"loscil\",\n \"loscil3\",\n \"loscil3phs\",\n \"loscilphs\",\n \"loscilx\",\n \"lowpass2\",\n \"lowres\",\n \"lowresx\",\n \"lpcanal\",\n \"lpcfilter\",\n \"lpf18\",\n \"lpform\",\n \"lpfreson\",\n \"lphasor\",\n \"lpinterp\",\n \"lposcil\",\n \"lposcil3\",\n \"lposcila\",\n \"lposcilsa\",\n \"lposcilsa2\",\n \"lpread\",\n \"lpreson\",\n \"lpshold\",\n \"lpsholdp\",\n \"lpslot\",\n \"lufs\",\n \"mac\",\n \"maca\",\n \"madsr\",\n \"mags\",\n \"mandel\",\n \"mandol\",\n \"maparray\",\n \"maparray_i\",\n \"marimba\",\n \"massign\",\n \"max\",\n \"max_k\",\n \"maxabs\",\n \"maxabsaccum\",\n \"maxaccum\",\n \"maxalloc\",\n \"maxarray\",\n \"mclock\",\n \"mdelay\",\n \"median\",\n \"mediank\",\n \"metro\",\n \"metro2\",\n \"metrobpm\",\n \"mfb\",\n \"midglobal\",\n \"midiarp\",\n \"midic14\",\n \"midic21\",\n \"midic7\",\n \"midichannelaftertouch\",\n \"midichn\",\n \"midicontrolchange\",\n \"midictrl\",\n \"mididefault\",\n \"midifilestatus\",\n \"midiin\",\n \"midinoteoff\",\n \"midinoteoncps\",\n \"midinoteonkey\",\n \"midinoteonoct\",\n \"midinoteonpch\",\n \"midion\",\n \"midion2\",\n \"midiout\",\n \"midiout_i\",\n \"midipgm\",\n \"midipitchbend\",\n \"midipolyaftertouch\",\n \"midiprogramchange\",\n \"miditempo\",\n \"midremot\",\n \"min\",\n \"minabs\",\n \"minabsaccum\",\n \"minaccum\",\n \"minarray\",\n \"mincer\",\n \"mirror\",\n \"mode\",\n \"modmatrix\",\n \"monitor\",\n \"moog\",\n \"moogladder\",\n \"moogladder2\",\n \"moogvcf\",\n \"moogvcf2\",\n \"moscil\",\n \"mp3bitrate\",\n \"mp3in\",\n \"mp3len\",\n \"mp3nchnls\",\n \"mp3out\",\n \"mp3scal\",\n \"mp3sr\",\n \"mpulse\",\n \"mrtmsg\",\n \"ms2st\",\n \"mtof\",\n \"mton\",\n \"multitap\",\n \"mute\",\n \"mvchpf\",\n \"mvclpf1\",\n \"mvclpf2\",\n \"mvclpf3\",\n \"mvclpf4\",\n \"mvmfilter\",\n \"mxadsr\",\n \"nchnls_hw\",\n \"nestedap\",\n \"nlalp\",\n \"nlfilt\",\n \"nlfilt2\",\n \"noise\",\n \"noteoff\",\n \"noteon\",\n \"noteondur\",\n \"noteondur2\",\n \"notnum\",\n \"nreverb\",\n \"nrpn\",\n \"nsamp\",\n \"nstance\",\n \"nstrnum\",\n \"nstrstr\",\n \"ntof\",\n \"ntom\",\n \"ntrpol\",\n \"nxtpow2\",\n \"octave\",\n \"octcps\",\n \"octmidi\",\n \"octmidib\",\n \"octmidinn\",\n \"octpch\",\n \"olabuffer\",\n \"oscbnk\",\n \"oscil\",\n \"oscil1\",\n \"oscil1i\",\n \"oscil3\",\n \"oscili\",\n \"oscilikt\",\n \"osciliktp\",\n \"oscilikts\",\n \"osciln\",\n \"oscils\",\n \"oscilx\",\n \"out\",\n \"out32\",\n \"outall\",\n \"outc\",\n \"outch\",\n \"outh\",\n \"outiat\",\n \"outic\",\n \"outic14\",\n \"outipat\",\n \"outipb\",\n \"outipc\",\n \"outkat\",\n \"outkc\",\n \"outkc14\",\n \"outkpat\",\n \"outkpb\",\n \"outkpc\",\n \"outleta\",\n \"outletf\",\n \"outletk\",\n \"outletkid\",\n \"outletv\",\n \"outo\",\n \"outq\",\n \"outq1\",\n \"outq2\",\n \"outq3\",\n \"outq4\",\n \"outrg\",\n \"outs\",\n \"outs1\",\n \"outs2\",\n \"outvalue\",\n \"outx\",\n \"outz\",\n \"p\",\n \"p5gconnect\",\n \"p5gdata\",\n \"pan\",\n \"pan2\",\n \"pareq\",\n \"part2txt\",\n \"partials\",\n \"partikkel\",\n \"partikkelget\",\n \"partikkelset\",\n \"partikkelsync\",\n \"passign\",\n \"paulstretch\",\n \"pcauchy\",\n \"pchbend\",\n \"pchmidi\",\n \"pchmidib\",\n \"pchmidinn\",\n \"pchoct\",\n \"pchtom\",\n \"pconvolve\",\n \"pcount\",\n \"pdclip\",\n \"pdhalf\",\n \"pdhalfy\",\n \"peak\",\n \"pgmassign\",\n \"pgmchn\",\n \"phaser1\",\n \"phaser2\",\n \"phasor\",\n \"phasorbnk\",\n \"phs\",\n \"pindex\",\n \"pinker\",\n \"pinkish\",\n \"pitch\",\n \"pitchac\",\n \"pitchamdf\",\n \"planet\",\n \"platerev\",\n \"plltrack\",\n \"pluck\",\n \"poisson\",\n \"pol2rect\",\n \"polyaft\",\n \"polynomial\",\n \"port\",\n \"portk\",\n \"poscil\",\n \"poscil3\",\n \"pow\",\n \"powershape\",\n \"powoftwo\",\n \"pows\",\n \"prealloc\",\n \"prepiano\",\n \"print\",\n \"print_type\",\n \"printarray\",\n \"printf\",\n \"printf_i\",\n \"printk\",\n \"printk2\",\n \"printks\",\n \"printks2\",\n \"println\",\n \"prints\",\n \"printsk\",\n \"product\",\n \"pset\",\n \"ptablew\",\n \"ptrack\",\n \"puts\",\n \"pvadd\",\n \"pvbufread\",\n \"pvcross\",\n \"pvinterp\",\n \"pvoc\",\n \"pvread\",\n \"pvs2array\",\n \"pvs2tab\",\n \"pvsadsyn\",\n \"pvsanal\",\n \"pvsarp\",\n \"pvsbandp\",\n \"pvsbandr\",\n \"pvsbandwidth\",\n \"pvsbin\",\n \"pvsblur\",\n \"pvsbuffer\",\n \"pvsbufread\",\n \"pvsbufread2\",\n \"pvscale\",\n \"pvscent\",\n \"pvsceps\",\n \"pvscfs\",\n \"pvscross\",\n \"pvsdemix\",\n \"pvsdiskin\",\n \"pvsdisp\",\n \"pvsenvftw\",\n \"pvsfilter\",\n \"pvsfread\",\n \"pvsfreeze\",\n \"pvsfromarray\",\n \"pvsftr\",\n \"pvsftw\",\n \"pvsfwrite\",\n \"pvsgain\",\n \"pvsgendy\",\n \"pvshift\",\n \"pvsifd\",\n \"pvsin\",\n \"pvsinfo\",\n \"pvsinit\",\n \"pvslock\",\n \"pvslpc\",\n \"pvsmaska\",\n \"pvsmix\",\n \"pvsmooth\",\n \"pvsmorph\",\n \"pvsosc\",\n \"pvsout\",\n \"pvspitch\",\n \"pvstanal\",\n \"pvstencil\",\n \"pvstrace\",\n \"pvsvoc\",\n \"pvswarp\",\n \"pvsynth\",\n \"pwd\",\n \"pyassign\",\n \"pyassigni\",\n \"pyassignt\",\n \"pycall\",\n \"pycall1\",\n \"pycall1i\",\n \"pycall1t\",\n \"pycall2\",\n \"pycall2i\",\n \"pycall2t\",\n \"pycall3\",\n \"pycall3i\",\n \"pycall3t\",\n \"pycall4\",\n \"pycall4i\",\n \"pycall4t\",\n \"pycall5\",\n \"pycall5i\",\n \"pycall5t\",\n \"pycall6\",\n \"pycall6i\",\n \"pycall6t\",\n \"pycall7\",\n \"pycall7i\",\n \"pycall7t\",\n \"pycall8\",\n \"pycall8i\",\n \"pycall8t\",\n \"pycalli\",\n \"pycalln\",\n \"pycallni\",\n \"pycallt\",\n \"pyeval\",\n \"pyevali\",\n \"pyevalt\",\n \"pyexec\",\n \"pyexeci\",\n \"pyexect\",\n \"pyinit\",\n \"pylassign\",\n \"pylassigni\",\n \"pylassignt\",\n \"pylcall\",\n \"pylcall1\",\n \"pylcall1i\",\n \"pylcall1t\",\n \"pylcall2\",\n \"pylcall2i\",\n \"pylcall2t\",\n \"pylcall3\",\n \"pylcall3i\",\n \"pylcall3t\",\n \"pylcall4\",\n \"pylcall4i\",\n \"pylcall4t\",\n \"pylcall5\",\n \"pylcall5i\",\n \"pylcall5t\",\n \"pylcall6\",\n \"pylcall6i\",\n \"pylcall6t\",\n \"pylcall7\",\n \"pylcall7i\",\n \"pylcall7t\",\n \"pylcall8\",\n \"pylcall8i\",\n \"pylcall8t\",\n \"pylcalli\",\n \"pylcalln\",\n \"pylcallni\",\n \"pylcallt\",\n \"pyleval\",\n \"pylevali\",\n \"pylevalt\",\n \"pylexec\",\n \"pylexeci\",\n \"pylexect\",\n \"pylrun\",\n \"pylruni\",\n \"pylrunt\",\n \"pyrun\",\n \"pyruni\",\n \"pyrunt\",\n \"qinf\",\n \"qnan\",\n \"r2c\",\n \"rand\",\n \"randc\",\n \"randh\",\n \"randi\",\n \"random\",\n \"randomh\",\n \"randomi\",\n \"rbjeq\",\n \"readclock\",\n \"readf\",\n \"readfi\",\n \"readk\",\n \"readk2\",\n \"readk3\",\n \"readk4\",\n \"readks\",\n \"readscore\",\n \"readscratch\",\n \"rect2pol\",\n \"release\",\n \"remoteport\",\n \"remove\",\n \"repluck\",\n \"reshapearray\",\n \"reson\",\n \"resonbnk\",\n \"resonk\",\n \"resonr\",\n \"resonx\",\n \"resonxk\",\n \"resony\",\n \"resonz\",\n \"resyn\",\n \"reverb\",\n \"reverb2\",\n \"reverbsc\",\n \"rewindscore\",\n \"rezzy\",\n \"rfft\",\n \"rifft\",\n \"rms\",\n \"rnd\",\n \"rnd31\",\n \"rndseed\",\n \"round\",\n \"rspline\",\n \"rtclock\",\n \"s16b14\",\n \"s32b14\",\n \"samphold\",\n \"sandpaper\",\n \"sc_lag\",\n \"sc_lagud\",\n \"sc_phasor\",\n \"sc_trig\",\n \"scale\",\n \"scale2\",\n \"scalearray\",\n \"scanhammer\",\n \"scanmap\",\n \"scans\",\n \"scansmap\",\n \"scantable\",\n \"scanu\",\n \"scanu2\",\n \"schedkwhen\",\n \"schedkwhennamed\",\n \"schedule\",\n \"schedulek\",\n \"schedwhen\",\n \"scoreline\",\n \"scoreline_i\",\n \"seed\",\n \"sekere\",\n \"select\",\n \"semitone\",\n \"sense\",\n \"sensekey\",\n \"seqtime\",\n \"seqtime2\",\n \"sequ\",\n \"sequstate\",\n \"serialBegin\",\n \"serialEnd\",\n \"serialFlush\",\n \"serialPrint\",\n \"serialRead\",\n \"serialWrite\",\n \"serialWrite_i\",\n \"setcol\",\n \"setctrl\",\n \"setksmps\",\n \"setrow\",\n \"setscorepos\",\n \"sfilist\",\n \"sfinstr\",\n \"sfinstr3\",\n \"sfinstr3m\",\n \"sfinstrm\",\n \"sfload\",\n \"sflooper\",\n \"sfpassign\",\n \"sfplay\",\n \"sfplay3\",\n \"sfplay3m\",\n \"sfplaym\",\n \"sfplist\",\n \"sfpreset\",\n \"shaker\",\n \"shiftin\",\n \"shiftout\",\n \"signum\",\n \"sin\",\n \"sinh\",\n \"sininv\",\n \"sinsyn\",\n \"skf\",\n \"sleighbells\",\n \"slicearray\",\n \"slicearray_i\",\n \"slider16\",\n \"slider16f\",\n \"slider16table\",\n \"slider16tablef\",\n \"slider32\",\n \"slider32f\",\n \"slider32table\",\n \"slider32tablef\",\n \"slider64\",\n \"slider64f\",\n \"slider64table\",\n \"slider64tablef\",\n \"slider8\",\n \"slider8f\",\n \"slider8table\",\n \"slider8tablef\",\n \"sliderKawai\",\n \"sndloop\",\n \"sndwarp\",\n \"sndwarpst\",\n \"sockrecv\",\n \"sockrecvs\",\n \"socksend\",\n \"socksends\",\n \"sorta\",\n \"sortd\",\n \"soundin\",\n \"space\",\n \"spat3d\",\n \"spat3di\",\n \"spat3dt\",\n \"spdist\",\n \"spf\",\n \"splitrig\",\n \"sprintf\",\n \"sprintfk\",\n \"spsend\",\n \"sqrt\",\n \"squinewave\",\n \"st2ms\",\n \"statevar\",\n \"sterrain\",\n \"stix\",\n \"strcat\",\n \"strcatk\",\n \"strchar\",\n \"strchark\",\n \"strcmp\",\n \"strcmpk\",\n \"strcpy\",\n \"strcpyk\",\n \"strecv\",\n \"streson\",\n \"strfromurl\",\n \"strget\",\n \"strindex\",\n \"strindexk\",\n \"string2array\",\n \"strlen\",\n \"strlenk\",\n \"strlower\",\n \"strlowerk\",\n \"strrindex\",\n \"strrindexk\",\n \"strset\",\n \"strstrip\",\n \"strsub\",\n \"strsubk\",\n \"strtod\",\n \"strtodk\",\n \"strtol\",\n \"strtolk\",\n \"strupper\",\n \"strupperk\",\n \"stsend\",\n \"subinstr\",\n \"subinstrinit\",\n \"sum\",\n \"sumarray\",\n \"svfilter\",\n \"svn\",\n \"syncgrain\",\n \"syncloop\",\n \"syncphasor\",\n \"system\",\n \"system_i\",\n \"tab\",\n \"tab2array\",\n \"tab2pvs\",\n \"tab_i\",\n \"tabifd\",\n \"table\",\n \"table3\",\n \"table3kt\",\n \"tablecopy\",\n \"tablefilter\",\n \"tablefilteri\",\n \"tablegpw\",\n \"tablei\",\n \"tableicopy\",\n \"tableigpw\",\n \"tableikt\",\n \"tableimix\",\n \"tablekt\",\n \"tablemix\",\n \"tableng\",\n \"tablera\",\n \"tableseg\",\n \"tableshuffle\",\n \"tableshufflei\",\n \"tablew\",\n \"tablewa\",\n \"tablewkt\",\n \"tablexkt\",\n \"tablexseg\",\n \"tabmorph\",\n \"tabmorpha\",\n \"tabmorphak\",\n \"tabmorphi\",\n \"tabplay\",\n \"tabrec\",\n \"tabsum\",\n \"tabw\",\n \"tabw_i\",\n \"tambourine\",\n \"tan\",\n \"tanh\",\n \"taninv\",\n \"taninv2\",\n \"tbvcf\",\n \"tempest\",\n \"tempo\",\n \"temposcal\",\n \"tempoval\",\n \"timedseq\",\n \"timeinstk\",\n \"timeinsts\",\n \"timek\",\n \"times\",\n \"tival\",\n \"tlineto\",\n \"tone\",\n \"tonek\",\n \"tonex\",\n \"tradsyn\",\n \"trandom\",\n \"transeg\",\n \"transegb\",\n \"transegr\",\n \"trcross\",\n \"trfilter\",\n \"trhighest\",\n \"trigExpseg\",\n \"trigLinseg\",\n \"trigexpseg\",\n \"trigger\",\n \"trighold\",\n \"triglinseg\",\n \"trigphasor\",\n \"trigseq\",\n \"trim\",\n \"trim_i\",\n \"trirand\",\n \"trlowest\",\n \"trmix\",\n \"trscale\",\n \"trshift\",\n \"trsplit\",\n \"turnoff\",\n \"turnoff2\",\n \"turnoff2_i\",\n \"turnoff3\",\n \"turnon\",\n \"tvconv\",\n \"unirand\",\n \"unwrap\",\n \"upsamp\",\n \"urandom\",\n \"urd\",\n \"vactrol\",\n \"vadd\",\n \"vadd_i\",\n \"vaddv\",\n \"vaddv_i\",\n \"vaget\",\n \"valpass\",\n \"vaset\",\n \"vbap\",\n \"vbapg\",\n \"vbapgmove\",\n \"vbaplsinit\",\n \"vbapmove\",\n \"vbapz\",\n \"vbapzmove\",\n \"vcella\",\n \"vclpf\",\n \"vco\",\n \"vco2\",\n \"vco2ft\",\n \"vco2ift\",\n \"vco2init\",\n \"vcomb\",\n \"vcopy\",\n \"vcopy_i\",\n \"vdel_k\",\n \"vdelay\",\n \"vdelay3\",\n \"vdelayk\",\n \"vdelayx\",\n \"vdelayxq\",\n \"vdelayxs\",\n \"vdelayxw\",\n \"vdelayxwq\",\n \"vdelayxws\",\n \"vdivv\",\n \"vdivv_i\",\n \"vecdelay\",\n \"veloc\",\n \"vexp\",\n \"vexp_i\",\n \"vexpseg\",\n \"vexpv\",\n \"vexpv_i\",\n \"vibes\",\n \"vibr\",\n \"vibrato\",\n \"vincr\",\n \"vlimit\",\n \"vlinseg\",\n \"vlowres\",\n \"vmap\",\n \"vmirror\",\n \"vmult\",\n \"vmult_i\",\n \"vmultv\",\n \"vmultv_i\",\n \"voice\",\n \"vosim\",\n \"vphaseseg\",\n \"vport\",\n \"vpow\",\n \"vpow_i\",\n \"vpowv\",\n \"vpowv_i\",\n \"vps\",\n \"vpvoc\",\n \"vrandh\",\n \"vrandi\",\n \"vsubv\",\n \"vsubv_i\",\n \"vtaba\",\n \"vtabi\",\n \"vtabk\",\n \"vtable1k\",\n \"vtablea\",\n \"vtablei\",\n \"vtablek\",\n \"vtablewa\",\n \"vtablewi\",\n \"vtablewk\",\n \"vtabwa\",\n \"vtabwi\",\n \"vtabwk\",\n \"vwrap\",\n \"waveset\",\n \"websocket\",\n \"weibull\",\n \"wgbow\",\n \"wgbowedbar\",\n \"wgbrass\",\n \"wgclar\",\n \"wgflute\",\n \"wgpluck\",\n \"wgpluck2\",\n \"wguide1\",\n \"wguide2\",\n \"wiiconnect\",\n \"wiidata\",\n \"wiirange\",\n \"wiisend\",\n \"window\",\n \"wrap\",\n \"writescratch\",\n \"wterrain\",\n \"wterrain2\",\n \"xadsr\",\n \"xin\",\n \"xout\",\n \"xtratim\",\n \"xyscale\",\n \"zacl\",\n \"zakinit\",\n \"zamod\",\n \"zar\",\n \"zarg\",\n \"zaw\",\n \"zawm\",\n \"zdf_1pole\",\n \"zdf_1pole_mode\",\n \"zdf_2pole\",\n \"zdf_2pole_mode\",\n \"zdf_ladder\",\n \"zfilter2\",\n \"zir\",\n \"ziw\",\n \"ziwm\",\n \"zkcl\",\n \"zkmod\",\n \"zkr\",\n \"zkw\",\n \"zkwm\"\n ];\n var deprecatedOpcodes = [\n \"OSCsendA\",\n \"array\",\n \"beadsynt\",\n \"beosc\",\n \"bformdec\",\n \"bformenc\",\n \"buchla\",\n \"copy2ftab\",\n \"copy2ttab\",\n \"getrowlin\",\n \"hrtfer\",\n \"ktableseg\",\n \"lentab\",\n \"lua_exec\",\n \"lua_iaopcall\",\n \"lua_iaopcall_off\",\n \"lua_ikopcall\",\n \"lua_ikopcall_off\",\n \"lua_iopcall\",\n \"lua_iopcall_off\",\n \"lua_opdef\",\n \"maxtab\",\n \"mintab\",\n \"mp3scal_check\",\n \"mp3scal_load\",\n \"mp3scal_load2\",\n \"mp3scal_play\",\n \"mp3scal_play2\",\n \"pop\",\n \"pop_f\",\n \"ptable\",\n \"ptable3\",\n \"ptablei\",\n \"ptableiw\",\n \"push\",\n \"push_f\",\n \"pvsgendy\",\n \"scalet\",\n \"signalflowgraph\",\n \"sndload\",\n \"socksend_k\",\n \"soundout\",\n \"soundouts\",\n \"specaddm\",\n \"specdiff\",\n \"specdisp\",\n \"specfilt\",\n \"spechist\",\n \"specptrk\",\n \"specscal\",\n \"specsum\",\n \"spectrum\",\n \"stack\",\n \"sumTableFilter\",\n \"sumtab\",\n \"systime\",\n \"tabgen\",\n \"tableiw\",\n \"tabmap\",\n \"tabmap_i\",\n \"tabrowlin\",\n \"tabslice\",\n \"tb0\",\n \"tb0_init\",\n \"tb1\",\n \"tb10\",\n \"tb10_init\",\n \"tb11\",\n \"tb11_init\",\n \"tb12\",\n \"tb12_init\",\n \"tb13\",\n \"tb13_init\",\n \"tb14\",\n \"tb14_init\",\n \"tb15\",\n \"tb15_init\",\n \"tb1_init\",\n \"tb2\",\n \"tb2_init\",\n \"tb3\",\n \"tb3_init\",\n \"tb4\",\n \"tb4_init\",\n \"tb5\",\n \"tb5_init\",\n \"tb6\",\n \"tb6_init\",\n \"tb7\",\n \"tb7_init\",\n \"tb8\",\n \"tb8_init\",\n \"tb9\",\n \"tb9_init\",\n \"vbap16\",\n \"vbap1move\",\n \"vbap4\",\n \"vbap4move\",\n \"vbap8\",\n \"vbap8move\",\n \"xscanmap\",\n \"xscans\",\n \"xscansmap\",\n \"xscanu\",\n \"xyin\"\n ];\n opcodes = lang.arrayToMap(opcodes);\n deprecatedOpcodes = lang.arrayToMap(deprecatedOpcodes);\n this.lineContinuations = [\n {\n token: \"constant.character.escape.line-continuation.csound\",\n regex: /\\\\$/\n }, this.pushRule({\n token: \"constant.character.escape.line-continuation.csound\",\n regex: /\\\\/,\n next: \"line continuation\"\n })\n ];\n this.comments.push(this.lineContinuations);\n this.quotedStringContents.push(this.lineContinuations, {\n token: \"invalid.illegal\",\n regex: /[^\"\\\\]*$/\n });\n var start = this.$rules.start;\n start.splice(1, 0, {\n token: [\"text.csound\", \"entity.name.label.csound\", \"entity.punctuation.label.csound\", \"text.csound\"],\n regex: /^([ \\t]*)(\\w+)(:)([ \\t]+|$)/\n });\n start.push(this.pushRule({\n token: \"keyword.function.csound\",\n regex: /\\binstr\\b/,\n next: \"instrument numbers and identifiers\"\n }), this.pushRule({\n token: \"keyword.function.csound\",\n regex: /\\bopcode\\b/,\n next: \"after opcode keyword\"\n }), {\n token: \"keyword.other.csound\",\n regex: /\\bend(?:in|op)\\b/\n }, {\n token: \"variable.language.csound\",\n regex: /\\b(?:0dbfs|A4|k(?:r|smps)|nchnls(?:_i)?|sr)\\b/\n }, this.numbers, {\n token: \"keyword.operator.csound\",\n regex: \"\\\\+=|-=|\\\\*=|/=|<<|>>|<=|>=|==|!=|&&|\\\\|\\\\||[~¬]|[=!+\\\\-*/^%&|<>#?:]\"\n }, this.pushRule({\n token: \"punctuation.definition.string.begin.csound\",\n regex: /\"/,\n next: \"quoted string\"\n }), this.pushRule({\n token: \"punctuation.definition.string.begin.csound\",\n regex: /{{/,\n next: \"braced string\"\n }), {\n token: \"keyword.control.csound\",\n regex: /\\b(?:do|else(?:if)?|end(?:if|until)|fi|i(?:f|then)|kthen|od|r(?:ir)?eturn|then|until|while)\\b/\n }, this.pushRule({\n token: \"keyword.control.csound\",\n regex: /\\b[ik]?goto\\b/,\n next: \"goto before label\"\n }), this.pushRule({\n token: \"keyword.control.csound\",\n regex: /\\b(?:r(?:einit|igoto)|tigoto)\\b/,\n next: \"goto before label\"\n }), this.pushRule({\n token: \"keyword.control.csound\",\n regex: /\\bc(?:g|in?|k|nk?)goto\\b/,\n next: [\"goto before label\", \"goto before argument\"]\n }), this.pushRule({\n token: \"keyword.control.csound\",\n regex: /\\btimout\\b/,\n next: [\"goto before label\", \"goto before argument\", \"goto before argument\"]\n }), this.pushRule({\n token: \"keyword.control.csound\",\n regex: /\\bloop_[gl][et]\\b/,\n next: [\"goto before label\", \"goto before argument\", \"goto before argument\", \"goto before argument\"]\n }), this.pushRule({\n token: \"support.function.csound\",\n regex: /\\b(?:readscore|scoreline(?:_i)?)\\b/,\n next: \"Csound score opcode\"\n }), this.pushRule({\n token: \"support.function.csound\",\n regex: /\\bpyl?run[it]?\\b(?!$)/,\n next: \"Python opcode\"\n }), this.pushRule({\n token: \"support.function.csound\",\n regex: /\\blua_(?:exec|opdef)\\b(?!$)/,\n next: \"Lua opcode\"\n }), {\n token: \"support.variable.csound\",\n regex: /\\bp\\d+\\b/\n }, {\n regex: /\\b([A-Z_a-z]\\w*)(?:(:)([A-Za-z]))?\\b/, onMatch: function (value, currentState, stack, line) {\n var tokens = value.split(this.splitRegex);\n var name = tokens[1];\n var type;\n if (opcodes.hasOwnProperty(name))\n type = \"support.function.csound\";\n else if (deprecatedOpcodes.hasOwnProperty(name))\n type = \"invalid.deprecated.csound\";\n if (type) {\n if (tokens[2]) {\n return [\n { type: type, value: name },\n { type: \"punctuation.type-annotation.csound\", value: tokens[2] },\n { type: \"type-annotation.storage.type.csound\", value: tokens[3] }\n ];\n }\n return type;\n }\n return \"text.csound\";\n }\n });\n this.$rules[\"macro parameter value list\"].splice(2, 0, {\n token: \"punctuation.definition.string.begin.csound\",\n regex: /{{/,\n next: \"macro parameter value braced string\"\n });\n var scoreHighlightRules = new CsoundScoreHighlightRules(\"csound-score-\");\n this.addRules({\n \"macro parameter value braced string\": [\n {\n token: \"constant.character.escape.csound\",\n regex: /\\\\[#'()]/\n }, {\n token: \"invalid.illegal.csound.csound\",\n regex: /[#'()]/\n }, {\n token: \"punctuation.definition.string.end.csound\",\n regex: /}}/,\n next: \"macro parameter value list\"\n }, {\n defaultToken: \"string.braced.csound\"\n }\n ],\n \"instrument numbers and identifiers\": [\n this.comments,\n {\n token: \"entity.name.function.csound\",\n regex: /\\d+|[A-Z_a-z]\\w*/\n }, this.popRule({\n token: \"empty\",\n regex: /$/\n })\n ],\n \"after opcode keyword\": [\n this.comments,\n this.popRule({\n token: \"empty\",\n regex: /$/\n }), this.popRule({\n token: \"entity.name.function.opcode.csound\",\n regex: /[A-Z_a-z]\\w*/,\n next: \"opcode type signatures\"\n })\n ],\n \"opcode type signatures\": [\n this.comments,\n this.popRule({\n token: \"empty\",\n regex: /$/\n }), {\n token: \"storage.type.csound\",\n regex: /\\b(?:0|[afijkKoOpPStV\\[\\]]+)/\n }\n ],\n \"quoted string\": [\n this.popRule({\n token: \"punctuation.definition.string.end.csound\",\n regex: /\"/\n }),\n this.quotedStringContents,\n {\n defaultToken: \"string.quoted.csound\"\n }\n ],\n \"braced string\": [\n this.popRule({\n token: \"punctuation.definition.string.end.csound\",\n regex: /}}/\n }),\n this.bracedStringContents,\n {\n defaultToken: \"string.braced.csound\"\n }\n ],\n \"goto before argument\": [\n this.popRule({\n token: \"text.csound\",\n regex: /,/\n }),\n start\n ],\n \"goto before label\": [\n {\n token: \"text.csound\",\n regex: /\\s+/\n },\n this.comments,\n this.popRule({\n token: \"entity.name.label.csound\",\n regex: /\\w+/\n }), this.popRule({\n token: \"empty\",\n regex: /(?!\\w)/\n })\n ],\n \"Csound score opcode\": [\n this.comments,\n {\n token: \"punctuation.definition.string.begin.csound\",\n regex: /{{/,\n next: scoreHighlightRules.embeddedRulePrefix + \"start\"\n }, this.popRule({\n token: \"empty\",\n regex: /$/\n })\n ],\n \"Python opcode\": [\n this.comments,\n {\n token: \"punctuation.definition.string.begin.csound\",\n regex: /{{/,\n next: \"python-start\"\n }, this.popRule({\n token: \"empty\",\n regex: /$/\n })\n ],\n \"Lua opcode\": [\n this.comments,\n {\n token: \"punctuation.definition.string.begin.csound\",\n regex: /{{/,\n next: \"lua-start\"\n }, this.popRule({\n token: \"empty\",\n regex: /$/\n })\n ],\n \"line continuation\": [\n this.popRule({\n token: \"empty\",\n regex: /$/\n }),\n this.semicolonComments,\n {\n token: \"invalid.illegal.csound\",\n regex: /\\S.*/\n }\n ]\n });\n var rules = [\n this.popRule({\n token: \"punctuation.definition.string.end.csound\",\n regex: /}}/\n })\n ];\n this.embedRules(scoreHighlightRules.getRules(), scoreHighlightRules.embeddedRulePrefix, rules);\n this.embedRules(PythonHighlightRules, \"python-\", rules);\n this.embedRules(LuaHighlightRules, \"lua-\", rules);\n this.normalizeRules();\n};\noop.inherits(CsoundOrchestraHighlightRules, CsoundPreprocessorHighlightRules);\nexports.CsoundOrchestraHighlightRules = CsoundOrchestraHighlightRules;\n\n});\n\nace.define(\"ace/mode/css_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/lib/lang\",\"ace/mode/text_highlight_rules\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar lang = require(\"../lib/lang\");\nvar TextHighlightRules = require(\"./text_highlight_rules\").TextHighlightRules;\nvar supportType = exports.supportType = \"align-content|align-items|align-self|all|animation|animation-delay|animation-direction|animation-duration|animation-fill-mode|animation-iteration-count|animation-name|animation-play-state|animation-timing-function|backface-visibility|background|background-attachment|background-blend-mode|background-clip|background-color|background-image|background-origin|background-position|background-repeat|background-size|border|border-bottom|border-bottom-color|border-bottom-left-radius|border-bottom-right-radius|border-bottom-style|border-bottom-width|border-collapse|border-color|border-image|border-image-outset|border-image-repeat|border-image-slice|border-image-source|border-image-width|border-left|border-left-color|border-left-style|border-left-width|border-radius|border-right|border-right-color|border-right-style|border-right-width|border-spacing|border-style|border-top|border-top-color|border-top-left-radius|border-top-right-radius|border-top-style|border-top-width|border-width|bottom|box-shadow|box-sizing|caption-side|clear|clip|color|column-count|column-fill|column-gap|column-rule|column-rule-color|column-rule-style|column-rule-width|column-span|column-width|columns|content|counter-increment|counter-reset|cursor|direction|display|empty-cells|filter|flex|flex-basis|flex-direction|flex-flow|flex-grow|flex-shrink|flex-wrap|float|font|font-family|font-size|font-size-adjust|font-stretch|font-style|font-variant|font-weight|hanging-punctuation|height|justify-content|left|letter-spacing|line-height|list-style|list-style-image|list-style-position|list-style-type|margin|margin-bottom|margin-left|margin-right|margin-top|max-height|max-width|max-zoom|min-height|min-width|min-zoom|nav-down|nav-index|nav-left|nav-right|nav-up|opacity|order|outline|outline-color|outline-offset|outline-style|outline-width|overflow|overflow-x|overflow-y|padding|padding-bottom|padding-left|padding-right|padding-top|page-break-after|page-break-before|page-break-inside|perspective|perspective-origin|position|quotes|resize|right|tab-size|table-layout|text-align|text-align-last|text-decoration|text-decoration-color|text-decoration-line|text-decoration-style|text-indent|text-justify|text-overflow|text-shadow|text-transform|top|transform|transform-origin|transform-style|transition|transition-delay|transition-duration|transition-property|transition-timing-function|unicode-bidi|user-select|user-zoom|vertical-align|visibility|white-space|width|word-break|word-spacing|word-wrap|z-index\";\nvar supportFunction = exports.supportFunction = \"rgb|rgba|url|attr|counter|counters\";\nvar supportConstant = exports.supportConstant = \"absolute|after-edge|after|all-scroll|all|alphabetic|always|antialiased|armenian|auto|avoid-column|avoid-page|avoid|balance|baseline|before-edge|before|below|bidi-override|block-line-height|block|bold|bolder|border-box|both|bottom|box|break-all|break-word|capitalize|caps-height|caption|center|central|char|circle|cjk-ideographic|clone|close-quote|col-resize|collapse|column|consider-shifts|contain|content-box|cover|crosshair|cubic-bezier|dashed|decimal-leading-zero|decimal|default|disabled|disc|disregard-shifts|distribute-all-lines|distribute-letter|distribute-space|distribute|dotted|double|e-resize|ease-in|ease-in-out|ease-out|ease|ellipsis|end|exclude-ruby|flex-end|flex-start|fill|fixed|georgian|glyphs|grid-height|groove|hand|hanging|hebrew|help|hidden|hiragana-iroha|hiragana|horizontal|icon|ideograph-alpha|ideograph-numeric|ideograph-parenthesis|ideograph-space|ideographic|inactive|include-ruby|inherit|initial|inline-block|inline-box|inline-line-height|inline-table|inline|inset|inside|inter-ideograph|inter-word|invert|italic|justify|katakana-iroha|katakana|keep-all|last|left|lighter|line-edge|line-through|line|linear|list-item|local|loose|lower-alpha|lower-greek|lower-latin|lower-roman|lowercase|lr-tb|ltr|mathematical|max-height|max-size|medium|menu|message-box|middle|move|n-resize|ne-resize|newspaper|no-change|no-close-quote|no-drop|no-open-quote|no-repeat|none|normal|not-allowed|nowrap|nw-resize|oblique|open-quote|outset|outside|overline|padding-box|page|pointer|pre-line|pre-wrap|pre|preserve-3d|progress|relative|repeat-x|repeat-y|repeat|replaced|reset-size|ridge|right|round|row-resize|rtl|s-resize|scroll|se-resize|separate|slice|small-caps|small-caption|solid|space|square|start|static|status-bar|step-end|step-start|steps|stretch|strict|sub|super|sw-resize|table-caption|table-cell|table-column-group|table-column|table-footer-group|table-header-group|table-row-group|table-row|table|tb-rl|text-after-edge|text-before-edge|text-bottom|text-size|text-top|text|thick|thin|transparent|underline|upper-alpha|upper-latin|upper-roman|uppercase|use-script|vertical-ideographic|vertical-text|visible|w-resize|wait|whitespace|z-index|zero|zoom\";\nvar supportConstantColor = exports.supportConstantColor = \"aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|green|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|rebeccapurple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen\";\nvar supportConstantFonts = exports.supportConstantFonts = \"arial|century|comic|courier|cursive|fantasy|garamond|georgia|helvetica|impact|lucida|symbol|system|tahoma|times|trebuchet|utopia|verdana|webdings|sans-serif|serif|monospace\";\nvar numRe = exports.numRe = \"\\\\-?(?:(?:[0-9]+(?:\\\\.[0-9]+)?)|(?:\\\\.[0-9]+))\";\nvar pseudoElements = exports.pseudoElements = \"(\\\\:+)\\\\b(after|before|first-letter|first-line|moz-selection|selection)\\\\b\";\nvar pseudoClasses = exports.pseudoClasses = \"(:)\\\\b(active|checked|disabled|empty|enabled|first-child|first-of-type|focus|hover|indeterminate|invalid|last-child|last-of-type|link|not|nth-child|nth-last-child|nth-last-of-type|nth-of-type|only-child|only-of-type|required|root|target|valid|visited)\\\\b\";\nvar CssHighlightRules = function () {\n var keywordMapper = this.createKeywordMapper({\n \"support.function\": supportFunction,\n \"support.constant\": supportConstant,\n \"support.type\": supportType,\n \"support.constant.color\": supportConstantColor,\n \"support.constant.fonts\": supportConstantFonts\n }, \"text\", true);\n this.$rules = {\n \"start\": [{\n include: [\"strings\", \"url\", \"comments\"]\n }, {\n token: \"paren.lparen\",\n regex: \"\\\\{\",\n next: \"ruleset\"\n }, {\n token: \"paren.rparen\",\n regex: \"\\\\}\"\n }, {\n token: \"string\",\n regex: \"@(?!viewport)\",\n next: \"media\"\n }, {\n token: \"keyword\",\n regex: \"#[a-z0-9-_]+\"\n }, {\n token: \"keyword\",\n regex: \"%\"\n }, {\n token: \"variable\",\n regex: \"\\\\.[a-z0-9-_]+\"\n }, {\n token: \"string\",\n regex: \":[a-z0-9-_]+\"\n }, {\n token: \"constant.numeric\",\n regex: numRe\n }, {\n token: \"constant\",\n regex: \"[a-z0-9-_]+\"\n }, {\n caseInsensitive: true\n }],\n \"media\": [{\n include: [\"strings\", \"url\", \"comments\"]\n }, {\n token: \"paren.lparen\",\n regex: \"\\\\{\",\n next: \"start\"\n }, {\n token: \"paren.rparen\",\n regex: \"\\\\}\",\n next: \"start\"\n }, {\n token: \"string\",\n regex: \";\",\n next: \"start\"\n }, {\n token: \"keyword\",\n regex: \"(?:media|supports|document|charset|import|namespace|media|supports|document\"\n + \"|page|font|keyframes|viewport|counter-style|font-feature-values\"\n + \"|swash|ornaments|annotation|stylistic|styleset|character-variant)\"\n }],\n \"comments\": [{\n token: \"comment\",\n regex: \"\\\\/\\\\*\",\n push: [{\n token: \"comment\",\n regex: \"\\\\*\\\\/\",\n next: \"pop\"\n }, {\n defaultToken: \"comment\"\n }]\n }],\n \"ruleset\": [{\n regex: \"-(webkit|ms|moz|o)-\",\n token: \"text\"\n }, {\n token: \"punctuation.operator\",\n regex: \"[:;]\"\n }, {\n token: \"paren.rparen\",\n regex: \"\\\\}\",\n next: \"start\"\n }, {\n include: [\"strings\", \"url\", \"comments\"]\n }, {\n token: [\"constant.numeric\", \"keyword\"],\n regex: \"(\" + numRe + \")(ch|cm|deg|em|ex|fr|gd|grad|Hz|in|kHz|mm|ms|pc|pt|px|rad|rem|s|turn|vh|vmax|vmin|vm|vw|%)\"\n }, {\n token: \"constant.numeric\",\n regex: numRe\n }, {\n token: \"constant.numeric\",\n regex: \"#[a-f0-9]{6}\"\n }, {\n token: \"constant.numeric\",\n regex: \"#[a-f0-9]{3}\"\n }, {\n token: [\"punctuation\", \"entity.other.attribute-name.pseudo-element.css\"],\n regex: pseudoElements\n }, {\n token: [\"punctuation\", \"entity.other.attribute-name.pseudo-class.css\"],\n regex: pseudoClasses\n }, {\n include: \"url\"\n }, {\n token: keywordMapper,\n regex: \"\\\\-?[a-zA-Z_][a-zA-Z0-9_\\\\-]*\"\n }, {\n caseInsensitive: true\n }],\n url: [{\n token: \"support.function\",\n regex: \"(?:url(:?-prefix)?|domain|regexp)\\\\(\",\n push: [{\n token: \"support.function\",\n regex: \"\\\\)\",\n next: \"pop\"\n }, {\n defaultToken: \"string\"\n }]\n }],\n strings: [{\n token: \"string.start\",\n regex: \"'\",\n push: [{\n token: \"string.end\",\n regex: \"'|$\",\n next: \"pop\"\n }, {\n include: \"escapes\"\n }, {\n token: \"constant.language.escape\",\n regex: /\\\\$/,\n consumeLineEnd: true\n }, {\n defaultToken: \"string\"\n }]\n }, {\n token: \"string.start\",\n regex: '\"',\n push: [{\n token: \"string.end\",\n regex: '\"|$',\n next: \"pop\"\n }, {\n include: \"escapes\"\n }, {\n token: \"constant.language.escape\",\n regex: /\\\\$/,\n consumeLineEnd: true\n }, {\n defaultToken: \"string\"\n }]\n }],\n escapes: [{\n token: \"constant.language.escape\",\n regex: /\\\\([a-fA-F\\d]{1,6}|[^a-fA-F\\d])/\n }]\n };\n this.normalizeRules();\n};\noop.inherits(CssHighlightRules, TextHighlightRules);\nexports.CssHighlightRules = CssHighlightRules;\n\n});\n\nace.define(\"ace/mode/jsdoc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar TextHighlightRules = require(\"./text_highlight_rules\").TextHighlightRules;\nvar JsDocCommentHighlightRules = function () {\n this.$rules = {\n \"start\": [\n {\n token: [\"comment.doc.tag\", \"comment.doc.text\", \"lparen.doc\"],\n regex: \"(@(?:param|member|typedef|property|namespace|var|const|callback))(\\\\s*)({)\",\n push: [\n {\n token: \"lparen.doc\",\n regex: \"{\",\n push: [\n {\n include: \"doc-syntax\"\n }, {\n token: \"rparen.doc\",\n regex: \"}|(?=$)\",\n next: \"pop\"\n }\n ]\n }, {\n token: [\"rparen.doc\", \"text.doc\", \"variable.parameter.doc\", \"lparen.doc\", \"variable.parameter.doc\", \"rparen.doc\"],\n regex: /(})(\\s*)(?:([\\w=:\\/\\.]+)|(?:(\\[)([\\w=:\\/\\.]+)(\\])))/,\n next: \"pop\"\n }, {\n token: \"rparen.doc\",\n regex: \"}|(?=$)\",\n next: \"pop\"\n }, {\n include: \"doc-syntax\"\n }, {\n defaultToken: \"text.doc\"\n }\n ]\n }, {\n token: [\"comment.doc.tag\", \"text.doc\", \"lparen.doc\"],\n regex: \"(@(?:returns?|yields|type|this|suppress|public|protected|private|package|modifies|\"\n + \"implements|external|exception|throws|enum|define|extends))(\\\\s*)({)\",\n push: [\n {\n token: \"lparen.doc\",\n regex: \"{\",\n push: [\n {\n include: \"doc-syntax\"\n }, {\n token: \"rparen.doc\",\n regex: \"}|(?=$)\",\n next: \"pop\"\n }\n ]\n }, {\n token: \"rparen.doc\",\n regex: \"}|(?=$)\",\n next: \"pop\"\n }, {\n include: \"doc-syntax\"\n }, {\n defaultToken: \"text.doc\"\n }\n ]\n }, {\n token: [\"comment.doc.tag\", \"text.doc\", \"variable.parameter.doc\"],\n regex: \"(@(?:alias|memberof|instance|module|name|lends|namespace|external|this|template|\"\n + \"requires|param|implements|function|extends|typedef|mixes|constructor|var|\"\n + \"memberof\\\\!|event|listens|exports|class|constructs|interface|emits|fires|\"\n + \"throws|const|callback|borrows|augments))(\\\\s+)(\\\\w[\\\\w#\\.:\\/~\\\"\\\\-]*)?\"\n }, {\n token: [\"comment.doc.tag\", \"text.doc\", \"variable.parameter.doc\"],\n regex: \"(@method)(\\\\s+)(\\\\w[\\\\w\\.\\\\(\\\\)]*)\"\n }, {\n token: \"comment.doc.tag\",\n regex: \"@access\\\\s+(?:private|public|protected)\"\n }, {\n token: \"comment.doc.tag\",\n regex: \"@kind\\\\s+(?:class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\"\n }, {\n token: \"comment.doc.tag\",\n regex: \"@\\\\w+(?=\\\\s|$)\"\n },\n JsDocCommentHighlightRules.getTagRule(),\n {\n defaultToken: \"comment.doc\",\n caseInsensitive: true\n }\n ],\n \"doc-syntax\": [{\n token: \"operator.doc\",\n regex: /[|:]/\n }, {\n token: \"paren.doc\",\n regex: /[\\[\\]]/\n }]\n };\n this.normalizeRules();\n};\noop.inherits(JsDocCommentHighlightRules, TextHighlightRules);\nJsDocCommentHighlightRules.getTagRule = function (start) {\n return {\n token: \"comment.doc.tag.storage.type\",\n regex: \"\\\\b(?:TODO|FIXME|XXX|HACK)\\\\b\"\n };\n};\nJsDocCommentHighlightRules.getStartRule = function (start) {\n return {\n token: \"comment.doc\",\n regex: \"\\\\/\\\\*(?=\\\\*)\",\n next: start\n };\n};\nJsDocCommentHighlightRules.getEndRule = function (start) {\n return {\n token: \"comment.doc\",\n regex: \"\\\\*\\\\/\",\n next: start\n };\n};\nexports.JsDocCommentHighlightRules = JsDocCommentHighlightRules;\n\n});\n\nace.define(\"ace/mode/javascript_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/jsdoc_comment_highlight_rules\",\"ace/mode/text_highlight_rules\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar DocCommentHighlightRules = require(\"./jsdoc_comment_highlight_rules\").JsDocCommentHighlightRules;\nvar TextHighlightRules = require(\"./text_highlight_rules\").TextHighlightRules;\nvar identifierRe = \"[a-zA-Z\\\\$_\\u00a1-\\uffff][a-zA-Z\\\\d\\\\$_\\u00a1-\\uffff]*\";\nvar JavaScriptHighlightRules = function (options) {\n var keywordMapper = this.createKeywordMapper({\n \"variable.language\": \"Array|Boolean|Date|Function|Iterator|Number|Object|RegExp|String|Proxy|Symbol|\" + // Constructors\n \"Namespace|QName|XML|XMLList|\" + // E4X\n \"ArrayBuffer|Float32Array|Float64Array|Int16Array|Int32Array|Int8Array|\" +\n \"Uint16Array|Uint32Array|Uint8Array|Uint8ClampedArray|\" +\n \"Error|EvalError|InternalError|RangeError|ReferenceError|StopIteration|\" + // Errors\n \"SyntaxError|TypeError|URIError|\" +\n \"decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|eval|isFinite|\" + // Non-constructor functions\n \"isNaN|parseFloat|parseInt|\" +\n \"JSON|Math|\" + // Other\n \"this|arguments|prototype|window|document\",\n \"keyword\": \"const|yield|import|get|set|async|await|\" +\n \"break|case|catch|continue|default|delete|do|else|finally|for|function|\" +\n \"if|in|of|instanceof|new|return|switch|throw|try|typeof|let|var|while|with|debugger|\" +\n \"__parent__|__count__|escape|unescape|with|__proto__|\" +\n \"class|enum|extends|super|export|implements|private|public|interface|package|protected|static|constructor\",\n \"storage.type\": \"const|let|var|function\",\n \"constant.language\": \"null|Infinity|NaN|undefined\",\n \"support.function\": \"alert\",\n \"constant.language.boolean\": \"true|false\"\n }, \"identifier\");\n var kwBeforeRe = \"case|do|else|finally|in|instanceof|return|throw|try|typeof|yield|void\";\n var escapedRe = \"\\\\\\\\(?:x[0-9a-fA-F]{2}|\" + // hex\n \"u[0-9a-fA-F]{4}|\" + // unicode\n \"u{[0-9a-fA-F]{1,6}}|\" + // es6 unicode\n \"[0-2][0-7]{0,2}|\" + // oct\n \"3[0-7][0-7]?|\" + // oct\n \"[4-7][0-7]?|\" + //oct\n \".)\";\n this.$rules = {\n \"no_regex\": [\n DocCommentHighlightRules.getStartRule(\"doc-start\"),\n comments(\"no_regex\"),\n {\n token: \"string\",\n regex: \"'(?=.)\",\n next: \"qstring\"\n }, {\n token: \"string\",\n regex: '\"(?=.)',\n next: \"qqstring\"\n }, {\n token: \"constant.numeric\",\n regex: /0(?:[xX][0-9a-fA-F]+|[oO][0-7]+|[bB][01]+)\\b/\n }, {\n token: \"constant.numeric\",\n regex: /(?:\\d\\d*(?:\\.\\d*)?|\\.\\d+)(?:[eE][+-]?\\d+\\b)?/\n }, {\n token: [\n \"storage.type\", \"punctuation.operator\", \"support.function\",\n \"punctuation.operator\", \"entity.name.function\", \"text\", \"keyword.operator\"\n ],\n regex: \"(\" + identifierRe + \")(\\\\.)(prototype)(\\\\.)(\" + identifierRe + \")(\\\\s*)(=)\",\n next: \"function_arguments\"\n }, {\n token: [\n \"storage.type\", \"punctuation.operator\", \"entity.name.function\", \"text\",\n \"keyword.operator\", \"text\", \"storage.type\", \"text\", \"paren.lparen\"\n ],\n regex: \"(\" + identifierRe + \")(\\\\.)(\" + identifierRe + \")(\\\\s*)(=)(\\\\s*)(function\\\\*?)(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: [\n \"entity.name.function\", \"text\", \"keyword.operator\", \"text\", \"storage.type\",\n \"text\", \"paren.lparen\"\n ],\n regex: \"(\" + identifierRe + \")(\\\\s*)(=)(\\\\s*)(function\\\\*?)(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: [\n \"storage.type\", \"punctuation.operator\", \"entity.name.function\", \"text\",\n \"keyword.operator\", \"text\",\n \"storage.type\", \"text\", \"entity.name.function\", \"text\", \"paren.lparen\"\n ],\n regex: \"(\" + identifierRe + \")(\\\\.)(\" + identifierRe + \")(\\\\s*)(=)(\\\\s*)(function\\\\*?)(\\\\s+)(\\\\w+)(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: [\n \"storage.type\", \"text\", \"entity.name.function\", \"text\", \"paren.lparen\"\n ],\n regex: \"(function\\\\*?)(\\\\s+)(\" + identifierRe + \")(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: [\n \"entity.name.function\", \"text\", \"punctuation.operator\",\n \"text\", \"storage.type\", \"text\", \"paren.lparen\"\n ],\n regex: \"(\" + identifierRe + \")(\\\\s*)(:)(\\\\s*)(function\\\\*?)(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: [\n \"text\", \"text\", \"storage.type\", \"text\", \"paren.lparen\"\n ],\n regex: \"(:)(\\\\s*)(function\\\\*?)(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: \"keyword\",\n regex: \"from(?=\\\\s*('|\\\"))\"\n }, {\n token: \"keyword\",\n regex: \"(?:\" + kwBeforeRe + \")\\\\b\",\n next: \"start\"\n }, {\n token: \"support.constant\",\n regex: /that\\b/\n }, {\n token: [\"storage.type\", \"punctuation.operator\", \"support.function.firebug\"],\n regex: /(console)(\\.)(warn|info|log|error|time|trace|timeEnd|assert)\\b/\n }, {\n token: keywordMapper,\n regex: identifierRe\n }, {\n token: \"punctuation.operator\",\n regex: /[.](?![.])/,\n next: \"property\"\n }, {\n token: \"storage.type\",\n regex: /=>/,\n next: \"start\"\n }, {\n token: \"keyword.operator\",\n regex: /--|\\+\\+|\\.{3}|===|==|=|!=|!==|<+=?|>+=?|!|&&|\\|\\||\\?:|[!$%&*+\\-~\\/^]=?/,\n next: \"start\"\n }, {\n token: \"punctuation.operator\",\n regex: /[?:,;.]/,\n next: \"start\"\n }, {\n token: \"paren.lparen\",\n regex: /[\\[({]/,\n next: \"start\"\n }, {\n token: \"paren.rparen\",\n regex: /[\\])}]/\n }, {\n token: \"comment\",\n regex: /^#!.*$/\n }\n ],\n property: [{\n token: \"text\",\n regex: \"\\\\s+\"\n }, {\n token: [\n \"storage.type\", \"punctuation.operator\", \"entity.name.function\", \"text\",\n \"keyword.operator\", \"text\",\n \"storage.type\", \"text\", \"entity.name.function\", \"text\", \"paren.lparen\"\n ],\n regex: \"(\" + identifierRe + \")(\\\\.)(\" + identifierRe + \")(\\\\s*)(=)(\\\\s*)(function\\\\*?)(?:(\\\\s+)(\\\\w+))?(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: \"punctuation.operator\",\n regex: /[.](?![.])/\n }, {\n token: \"support.function\",\n regex: /(s(?:h(?:ift|ow(?:Mod(?:elessDialog|alDialog)|Help))|croll(?:X|By(?:Pages|Lines)?|Y|To)?|t(?:op|rike)|i(?:n|zeToContent|debar|gnText)|ort|u(?:p|b(?:str(?:ing)?)?)|pli(?:ce|t)|e(?:nd|t(?:Re(?:sizable|questHeader)|M(?:i(?:nutes|lliseconds)|onth)|Seconds|Ho(?:tKeys|urs)|Year|Cursor|Time(?:out)?|Interval|ZOptions|Date|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Date|FullYear)|FullYear|Active)|arch)|qrt|lice|avePreferences|mall)|h(?:ome|andleEvent)|navigate|c(?:har(?:CodeAt|At)|o(?:s|n(?:cat|textual|firm)|mpile)|eil|lear(?:Timeout|Interval)?|a(?:ptureEvents|ll)|reate(?:StyleSheet|Popup|EventObject))|t(?:o(?:GMTString|S(?:tring|ource)|U(?:TCString|pperCase)|Lo(?:caleString|werCase))|est|a(?:n|int(?:Enabled)?))|i(?:s(?:NaN|Finite)|ndexOf|talics)|d(?:isableExternalCapture|ump|etachEvent)|u(?:n(?:shift|taint|escape|watch)|pdateCommands)|j(?:oin|avaEnabled)|p(?:o(?:p|w)|ush|lugins.refresh|a(?:ddings|rse(?:Int|Float)?)|r(?:int|ompt|eference))|e(?:scape|nableExternalCapture|val|lementFromPoint|x(?:p|ec(?:Script|Command)?))|valueOf|UTC|queryCommand(?:State|Indeterm|Enabled|Value)|f(?:i(?:nd|lter|le(?:ModifiedDate|Size|CreatedDate|UpdatedDate)|xed)|o(?:nt(?:size|color)|rward|rEach)|loor|romCharCode)|watch|l(?:ink|o(?:ad|g)|astIndexOf)|a(?:sin|nchor|cos|t(?:tachEvent|ob|an(?:2)?)|pply|lert|b(?:s|ort))|r(?:ou(?:nd|teEvents)|e(?:size(?:By|To)|calc|turnValue|place|verse|l(?:oad|ease(?:Capture|Events)))|andom)|g(?:o|et(?:ResponseHeader|M(?:i(?:nutes|lliseconds)|onth)|Se(?:conds|lection)|Hours|Year|Time(?:zoneOffset)?|Da(?:y|te)|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Da(?:y|te)|FullYear)|FullYear|A(?:ttention|llResponseHeaders)))|m(?:in|ove(?:B(?:y|elow)|To(?:Absolute)?|Above)|ergeAttributes|a(?:tch|rgins|x))|b(?:toa|ig|o(?:ld|rderWidths)|link|ack))\\b(?=\\()/\n }, {\n token: \"support.function.dom\",\n regex: /(s(?:ub(?:stringData|mit)|plitText|e(?:t(?:NamedItem|Attribute(?:Node)?)|lect))|has(?:ChildNodes|Feature)|namedItem|c(?:l(?:ick|o(?:se|neNode))|reate(?:C(?:omment|DATASection|aption)|T(?:Head|extNode|Foot)|DocumentFragment|ProcessingInstruction|E(?:ntityReference|lement)|Attribute))|tabIndex|i(?:nsert(?:Row|Before|Cell|Data)|tem)|open|delete(?:Row|C(?:ell|aption)|T(?:Head|Foot)|Data)|focus|write(?:ln)?|a(?:dd|ppend(?:Child|Data))|re(?:set|place(?:Child|Data)|move(?:NamedItem|Child|Attribute(?:Node)?)?)|get(?:NamedItem|Element(?:sBy(?:Name|TagName|ClassName)|ById)|Attribute(?:Node)?)|blur)\\b(?=\\()/\n }, {\n token: \"support.constant\",\n regex: /(s(?:ystemLanguage|cr(?:ipts|ollbars|een(?:X|Y|Top|Left))|t(?:yle(?:Sheets)?|atus(?:Text|bar)?)|ibling(?:Below|Above)|ource|uffixes|e(?:curity(?:Policy)?|l(?:ection|f)))|h(?:istory|ost(?:name)?|as(?:h|Focus))|y|X(?:MLDocument|SLDocument)|n(?:ext|ame(?:space(?:s|URI)|Prop))|M(?:IN_VALUE|AX_VALUE)|c(?:haracterSet|o(?:n(?:structor|trollers)|okieEnabled|lorDepth|mp(?:onents|lete))|urrent|puClass|l(?:i(?:p(?:boardData)?|entInformation)|osed|asses)|alle(?:e|r)|rypto)|t(?:o(?:olbar|p)|ext(?:Transform|Indent|Decoration|Align)|ags)|SQRT(?:1_2|2)|i(?:n(?:ner(?:Height|Width)|put)|ds|gnoreCase)|zIndex|o(?:scpu|n(?:readystatechange|Line)|uter(?:Height|Width)|p(?:sProfile|ener)|ffscreenBuffering)|NEGATIVE_INFINITY|d(?:i(?:splay|alog(?:Height|Top|Width|Left|Arguments)|rectories)|e(?:scription|fault(?:Status|Ch(?:ecked|arset)|View)))|u(?:ser(?:Profile|Language|Agent)|n(?:iqueID|defined)|pdateInterval)|_content|p(?:ixelDepth|ort|ersonalbar|kcs11|l(?:ugins|atform)|a(?:thname|dding(?:Right|Bottom|Top|Left)|rent(?:Window|Layer)?|ge(?:X(?:Offset)?|Y(?:Offset)?))|r(?:o(?:to(?:col|type)|duct(?:Sub)?|mpter)|e(?:vious|fix)))|e(?:n(?:coding|abledPlugin)|x(?:ternal|pando)|mbeds)|v(?:isibility|endor(?:Sub)?|Linkcolor)|URLUnencoded|P(?:I|OSITIVE_INFINITY)|f(?:ilename|o(?:nt(?:Size|Family|Weight)|rmName)|rame(?:s|Element)|gColor)|E|whiteSpace|l(?:i(?:stStyleType|n(?:eHeight|kColor))|o(?:ca(?:tion(?:bar)?|lName)|wsrc)|e(?:ngth|ft(?:Context)?)|a(?:st(?:M(?:odified|atch)|Index|Paren)|yer(?:s|X)|nguage))|a(?:pp(?:MinorVersion|Name|Co(?:deName|re)|Version)|vail(?:Height|Top|Width|Left)|ll|r(?:ity|guments)|Linkcolor|bove)|r(?:ight(?:Context)?|e(?:sponse(?:XML|Text)|adyState))|global|x|m(?:imeTypes|ultiline|enubar|argin(?:Right|Bottom|Top|Left))|L(?:N(?:10|2)|OG(?:10E|2E))|b(?:o(?:ttom|rder(?:Width|RightWidth|BottomWidth|Style|Color|TopWidth|LeftWidth))|ufferDepth|elow|ackground(?:Color|Image)))\\b/\n }, {\n token: \"identifier\",\n regex: identifierRe\n }, {\n regex: \"\",\n token: \"empty\",\n next: \"no_regex\"\n }\n ],\n \"start\": [\n DocCommentHighlightRules.getStartRule(\"doc-start\"),\n comments(\"start\"),\n {\n token: \"string.regexp\",\n regex: \"\\\\/\",\n next: \"regex\"\n }, {\n token: \"text\",\n regex: \"\\\\s+|^$\",\n next: \"start\"\n }, {\n token: \"empty\",\n regex: \"\",\n next: \"no_regex\"\n }\n ],\n \"regex\": [\n {\n token: \"regexp.keyword.operator\",\n regex: \"\\\\\\\\(?:u[\\\\da-fA-F]{4}|x[\\\\da-fA-F]{2}|.)\"\n }, {\n token: \"string.regexp\",\n regex: \"/[sxngimy]*\",\n next: \"no_regex\"\n }, {\n token: \"invalid\",\n regex: /\\{\\d+\\b,?\\d*\\}[+*]|[+*$^?][+*]|[$^][?]|\\?{3,}/\n }, {\n token: \"constant.language.escape\",\n regex: /\\(\\?[:=!]|\\)|\\{\\d+\\b,?\\d*\\}|[+*]\\?|[()$^+*?.]/\n }, {\n token: \"constant.language.delimiter\",\n regex: /\\|/\n }, {\n token: \"constant.language.escape\",\n regex: /\\[\\^?/,\n next: \"regex_character_class\"\n }, {\n token: \"empty\",\n regex: \"$\",\n next: \"no_regex\"\n }, {\n defaultToken: \"string.regexp\"\n }\n ],\n \"regex_character_class\": [\n {\n token: \"regexp.charclass.keyword.operator\",\n regex: \"\\\\\\\\(?:u[\\\\da-fA-F]{4}|x[\\\\da-fA-F]{2}|.)\"\n }, {\n token: \"constant.language.escape\",\n regex: \"]\",\n next: \"regex\"\n }, {\n token: \"constant.language.escape\",\n regex: \"-\"\n }, {\n token: \"empty\",\n regex: \"$\",\n next: \"no_regex\"\n }, {\n defaultToken: \"string.regexp.charachterclass\"\n }\n ],\n \"default_parameter\": [\n {\n token: \"string\",\n regex: \"'(?=.)\",\n push: [\n {\n token: \"string\",\n regex: \"'|$\",\n next: \"pop\"\n }, {\n include: \"qstring\"\n }\n ]\n }, {\n token: \"string\",\n regex: '\"(?=.)',\n push: [\n {\n token: \"string\",\n regex: '\"|$',\n next: \"pop\"\n }, {\n include: \"qqstring\"\n }\n ]\n }, {\n token: \"constant.language\",\n regex: \"null|Infinity|NaN|undefined\"\n }, {\n token: \"constant.numeric\",\n regex: /0(?:[xX][0-9a-fA-F]+|[oO][0-7]+|[bB][01]+)\\b/\n }, {\n token: \"constant.numeric\",\n regex: /(?:\\d\\d*(?:\\.\\d*)?|\\.\\d+)(?:[eE][+-]?\\d+\\b)?/\n }, {\n token: \"punctuation.operator\",\n regex: \",\",\n next: \"function_arguments\"\n }, {\n token: \"text\",\n regex: \"\\\\s+\"\n }, {\n token: \"punctuation.operator\",\n regex: \"$\"\n }, {\n token: \"empty\",\n regex: \"\",\n next: \"no_regex\"\n }\n ],\n \"function_arguments\": [\n comments(\"function_arguments\"),\n {\n token: \"variable.parameter\",\n regex: identifierRe\n }, {\n token: \"punctuation.operator\",\n regex: \",\"\n }, {\n token: \"text\",\n regex: \"\\\\s+\"\n }, {\n token: \"punctuation.operator\",\n regex: \"$\"\n }, {\n token: \"empty\",\n regex: \"\",\n next: \"no_regex\"\n }\n ],\n \"qqstring\": [\n {\n token: \"constant.language.escape\",\n regex: escapedRe\n }, {\n token: \"string\",\n regex: \"\\\\\\\\$\",\n consumeLineEnd: true\n }, {\n token: \"string\",\n regex: '\"|$',\n next: \"no_regex\"\n }, {\n defaultToken: \"string\"\n }\n ],\n \"qstring\": [\n {\n token: \"constant.language.escape\",\n regex: escapedRe\n }, {\n token: \"string\",\n regex: \"\\\\\\\\$\",\n consumeLineEnd: true\n }, {\n token: \"string\",\n regex: \"'|$\",\n next: \"no_regex\"\n }, {\n defaultToken: \"string\"\n }\n ]\n };\n if (!options || !options.noES6) {\n this.$rules.no_regex.unshift({\n regex: \"[{}]\", onMatch: function (val, state, stack) {\n this.next = val == \"{\" ? this.nextState : \"\";\n if (val == \"{\" && stack.length) {\n stack.unshift(\"start\", state);\n }\n else if (val == \"}\" && stack.length) {\n stack.shift();\n this.next = stack.shift();\n if (this.next.indexOf(\"string\") != -1 || this.next.indexOf(\"jsx\") != -1)\n return \"paren.quasi.end\";\n }\n return val == \"{\" ? \"paren.lparen\" : \"paren.rparen\";\n },\n nextState: \"start\"\n }, {\n token: \"string.quasi.start\",\n regex: /`/,\n push: [{\n token: \"constant.language.escape\",\n regex: escapedRe\n }, {\n token: \"paren.quasi.start\",\n regex: /\\${/,\n push: \"start\"\n }, {\n token: \"string.quasi.end\",\n regex: /`/,\n next: \"pop\"\n }, {\n defaultToken: \"string.quasi\"\n }]\n }, {\n token: [\"variable.parameter\", \"text\"],\n regex: \"(\" + identifierRe + \")(\\\\s*)(?=\\\\=>)\"\n }, {\n token: \"paren.lparen\",\n regex: \"(\\\\()(?=.+\\\\s*=>)\",\n next: \"function_arguments\"\n }, {\n token: \"variable.language\",\n regex: \"(?:(?:(?:Weak)?(?:Set|Map))|Promise)\\\\b\"\n });\n this.$rules[\"function_arguments\"].unshift({\n token: \"keyword.operator\",\n regex: \"=\",\n next: \"default_parameter\"\n }, {\n token: \"keyword.operator\",\n regex: \"\\\\.{3}\"\n });\n this.$rules[\"property\"].unshift({\n token: \"support.function\",\n regex: \"(findIndex|repeat|startsWith|endsWith|includes|isSafeInteger|trunc|cbrt|log2|log10|sign|then|catch|\"\n + \"finally|resolve|reject|race|any|all|allSettled|keys|entries|isInteger)\\\\b(?=\\\\()\"\n }, {\n token: \"constant.language\",\n regex: \"(?:MAX_SAFE_INTEGER|MIN_SAFE_INTEGER|EPSILON)\\\\b\"\n });\n if (!options || options.jsx != false)\n JSX.call(this);\n }\n this.embedRules(DocCommentHighlightRules, \"doc-\", [DocCommentHighlightRules.getEndRule(\"no_regex\")]);\n this.normalizeRules();\n};\noop.inherits(JavaScriptHighlightRules, TextHighlightRules);\nfunction JSX() {\n var tagRegex = identifierRe.replace(\"\\\\d\", \"\\\\d\\\\-\");\n var jsxTag = {\n onMatch: function (val, state, stack) {\n var offset = val.charAt(1) == \"/\" ? 2 : 1;\n if (offset == 1) {\n if (state != this.nextState)\n stack.unshift(this.next, this.nextState, 0);\n else\n stack.unshift(this.next);\n stack[2]++;\n }\n else if (offset == 2) {\n if (state == this.nextState) {\n stack[1]--;\n if (!stack[1] || stack[1] < 0) {\n stack.shift();\n stack.shift();\n }\n }\n }\n return [{\n type: \"meta.tag.punctuation.\" + (offset == 1 ? \"\" : \"end-\") + \"tag-open.xml\",\n value: val.slice(0, offset)\n }, {\n type: \"meta.tag.tag-name.xml\",\n value: val.substr(offset)\n }];\n },\n regex: \"</?\" + tagRegex + \"\",\n next: \"jsxAttributes\",\n nextState: \"jsx\"\n };\n this.$rules.start.unshift(jsxTag);\n var jsxJsRule = {\n regex: \"{\",\n token: \"paren.quasi.start\",\n push: \"start\"\n };\n this.$rules.jsx = [\n jsxJsRule,\n jsxTag,\n { include: \"reference\" },\n { defaultToken: \"string\" }\n ];\n this.$rules.jsxAttributes = [{\n token: \"meta.tag.punctuation.tag-close.xml\",\n regex: \"/?>\",\n onMatch: function (value, currentState, stack) {\n if (currentState == stack[0])\n stack.shift();\n if (value.length == 2) {\n if (stack[0] == this.nextState)\n stack[1]--;\n if (!stack[1] || stack[1] < 0) {\n stack.splice(0, 2);\n }\n }\n this.next = stack[0] || \"start\";\n return [{ type: this.token, value: value }];\n },\n nextState: \"jsx\"\n },\n jsxJsRule,\n comments(\"jsxAttributes\"),\n {\n token: \"entity.other.attribute-name.xml\",\n regex: tagRegex\n }, {\n token: \"keyword.operator.attribute-equals.xml\",\n regex: \"=\"\n }, {\n token: \"text.tag-whitespace.xml\",\n regex: \"\\\\s+\"\n }, {\n token: \"string.attribute-value.xml\",\n regex: \"'\",\n stateName: \"jsx_attr_q\",\n push: [\n { token: \"string.attribute-value.xml\", regex: \"'\", next: \"pop\" },\n { include: \"reference\" },\n { defaultToken: \"string.attribute-value.xml\" }\n ]\n }, {\n token: \"string.attribute-value.xml\",\n regex: '\"',\n stateName: \"jsx_attr_qq\",\n push: [\n { token: \"string.attribute-value.xml\", regex: '\"', next: \"pop\" },\n { include: \"reference\" },\n { defaultToken: \"string.attribute-value.xml\" }\n ]\n },\n jsxTag\n ];\n this.$rules.reference = [{\n token: \"constant.language.escape.reference.xml\",\n regex: \"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\\\.-]+;)\"\n }];\n}\nfunction comments(next) {\n return [\n {\n token: \"comment\",\n regex: /\\/\\*/,\n next: [\n DocCommentHighlightRules.getTagRule(),\n { token: \"comment\", regex: \"\\\\*\\\\/\", next: next || \"pop\" },\n { defaultToken: \"comment\", caseInsensitive: true }\n ]\n }, {\n token: \"comment\",\n regex: \"\\\\/\\\\/\",\n next: [\n DocCommentHighlightRules.getTagRule(),\n { token: \"comment\", regex: \"$|^\", next: next || \"pop\" },\n { defaultToken: \"comment\", caseInsensitive: true }\n ]\n }\n ];\n}\nexports.JavaScriptHighlightRules = JavaScriptHighlightRules;\n\n});\n\nace.define(\"ace/mode/xml_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar TextHighlightRules = require(\"./text_highlight_rules\").TextHighlightRules;\nvar XmlHighlightRules = function (normalize) {\n var tagRegex = \"[_:a-zA-Z\\xc0-\\uffff][-_:.a-zA-Z0-9\\xc0-\\uffff]*\";\n this.$rules = {\n start: [\n { token: \"string.cdata.xml\", regex: \"<\\\\!\\\\[CDATA\\\\[\", next: \"cdata\" },\n {\n token: [\"punctuation.instruction.xml\", \"keyword.instruction.xml\"],\n regex: \"(<\\\\?)(\" + tagRegex + \")\", next: \"processing_instruction\"\n },\n { token: \"comment.start.xml\", regex: \"<\\\\!
|