#include <eepp/ui/doc/languages/qb64.hpp>
#include <eepp/ui/doc/syntaxdefinitionmanager.hpp>

namespace EE { namespace UI { namespace Doc { namespace Language {

SyntaxDefinition& addQB64() {

	auto& sd = SyntaxDefinitionManager::instance()->add(

		{ "QB64",
		  { "%.bas$", "%.bi$", "%.bm$", "%.inc$" },
		  {
			  { { "'.*" }, "comment" },
			  { { "rem%s.*" }, "comment" },
			  { { "\"", "\"" }, "string" },
			  { { "-?&H%x+" }, "number" },
			  { { "-?%d+[%d%.eE]*" }, "number" },
			  { { "-?%.?%d+f?" }, "number" },
			  { { "[%a_][%w_]%$?*%s*%f[(]" }, "function" },
			  { { "[%-%(%)%*%,%.%/%:%;%\\%^%+%>%<%=]" }, "operator" },
			  { { "[$_]?[%a_][%w_]*[$&`%%]*" }, "symbol" },

		  },
		  {

			  { "$asserts", "keyword" },
			  { "$checking", "keyword" },
			  { "$color", "keyword" },
			  { "$console", "keyword" },
			  { "$debug", "keyword" },
			  { "$else", "keyword" },
			  { "$elseif", "keyword" },
			  { "$embed", "keyword" },
			  { "$end", "keyword" },
			  { "$error", "keyword" },
			  { "$exeicon", "keyword" },
			  { "$if", "keyword" },
			  { "$includeonce", "keyword" },
			  { "$let", "keyword" },
			  { "$resize", "keyword" },
			  { "$screenhide", "keyword" },
			  { "$screenshow", "keyword" },
			  { "$unstable", "keyword" },
			  { "$uselibrary", "keyword" },
			  { "$versioninfo", "keyword" },
			  { "abs", "function" },
			  { "absolute", "keyword" },
			  { "access", "keyword" },
			  { "alias", "keyword" },
			  { "and", "keyword" },
			  { "any", "keyword" },
			  { "append", "keyword" },
			  { "as", "keyword" },
			  { "asc", "function" },
			  { "atn", "function" },
			  { "base", "keyword" },
			  { "beep", "keyword" },
			  { "binary", "keyword" },
			  { "bload", "keyword" },
			  { "bsave", "keyword" },
			  { "byval", "keyword" },
			  { "call", "keyword" },
			  { "calls", "keyword" },
			  { "case", "keyword" },
			  { "cdbl", "keyword" },
			  { "cdecl", "keyword" },
			  { "chain", "keyword" },
			  { "chdir", "keyword" },
			  { "chr$", "function" },
			  { "cint", "function" },
			  { "circle", "keyword" },
			  { "clear", "keyword" },
			  { "clng", "function" },
			  { "close", "keyword" },
			  { "cls", "keyword" },
			  { "color", "keyword" },
			  { "com", "keyword" },
			  { "command$", "function" },
			  { "common", "keyword" },
			  { "console", "keyword" },
			  { "const", "keyword" },
			  { "cos", "function" },
			  { "csng", "function" },
			  { "csrlin", "keyword" },
			  { "customtype", "keyword" },
			  { "cvd", "function" },
			  { "cvdmbf", "function" },
			  { "cvi", "function" },
			  { "cvl", "function" },
			  { "cvs", "function" },
			  { "cvsmbf", "function" },
			  { "data", "keyword" },
			  { "date$", "function" },
			  { "declare", "keyword" },
			  { "def", "keyword" },
			  { "defdbl", "keyword" },
			  { "defint", "keyword" },
			  { "deflng", "keyword" },
			  { "defsng", "keyword" },
			  { "defstr", "keyword" },
			  { "dim", "keyword" },
			  { "do", "keyword" },
			  { "double", "keyword" },
			  { "draw", "keyword" },
			  { "dynamic", "keyword" },
			  { "else", "keyword" },
			  { "elseif", "keyword" },
			  { "end", "keyword" },
			  { "environ", "keyword" },
			  { "environ$", "function" },
			  { "eof", "function" },
			  { "eqv", "keyword" },
			  { "erase", "keyword" },
			  { "erdev", "function" },
			  { "erdev$", "function" },
			  { "erl", "function" },
			  { "err", "function" },
			  { "error", "keyword" },
			  { "everycase", "keyword" },
			  { "exit", "keyword" },
			  { "exp", "function" },
			  { "field", "keyword" },
			  { "fileattr", "function" },
			  { "files", "keyword" },
			  { "fix", "function" },
			  { "fn", "keyword" },
			  { "for", "keyword" },
			  { "fre", "function" },
			  { "free", "keyword" },
			  { "freefile", "function" },
			  { "function", "keyword" },
			  { "get", "keyword" },
			  { "gosub", "keyword" },
			  { "goto", "keyword" },
			  { "hex$", "function" },
			  { "if", "keyword" },
			  { "imp", "keyword" },
			  { "inkey$", "function" },
			  { "inp", "function" },
			  { "input", "keyword" },
			  { "input$", "function" },
			  { "instr", "function" },
			  { "int", "function" },
			  { "integer", "keyword" },
			  { "interrupt", "keyword" },
			  { "interruptx", "keyword" },
			  { "ioctl", "keyword" },
			  { "ioctl$", "keyword" },
			  { "is", "keyword" },
			  { "key", "keyword" },
			  { "kill", "keyword" },
			  { "lbound", "function" },
			  { "lcase$", "function" },
			  { "left$", "function" },
			  { "len", "function" },
			  { "let", "keyword" },
			  { "library", "keyword" },
			  { "line", "keyword" },
			  { "list", "keyword" },
			  { "loc", "function" },
			  { "locate", "keyword" },
			  { "lock", "keyword" },
			  { "lof", "function" },
			  { "log", "function" },
			  { "long", "keyword" },
			  { "loop", "keyword" },
			  { "lpos", "function" },
			  { "lprint", "keyword" },
			  { "lset", "keyword" },
			  { "ltrim$", "function" },
			  { "mid$", "function" },
			  { "mkd$", "function" },
			  { "mkdir", "keyword" },
			  { "mkdmbf$", "function" },
			  { "mki$", "function" },
			  { "mkl$", "function" },
			  { "mks$", "function" },
			  { "mksmbf$", "function" },
			  { "mod", "keyword" },
			  { "name", "keyword" },
			  { "next", "keyword" },
			  { "not", "keyword" },
			  { "oct$", "function" },
			  { "off", "keyword" },
			  { "on", "keyword" },
			  { "only", "keyword" },
			  { "open", "keyword" },
			  { "option", "keyword" },
			  { "or", "keyword" },
			  { "out", "keyword" },
			  { "output", "keyword" },
			  { "paint", "keyword" },
			  { "palette", "keyword" },
			  { "pcopy", "keyword" },
			  { "peek", "function" },
			  { "pen", "function" },
			  { "play", "keyword" },
			  { "pmap", "keyword" },
			  { "point", "function" },
			  { "poke", "keyword" },
			  { "pos", "function" },
			  { "preset", "keyword" },
			  { "print", "keyword" },
			  { "pset", "keyword" },
			  { "put", "keyword" },
			  { "random", "keyword" },
			  { "randomize", "keyword" },
			  { "read", "keyword" },
			  { "redim", "keyword" },
			  { "reset", "keyword" },
			  { "restore", "keyword" },
			  { "resume", "keyword" },
			  { "return", "keyword" },
			  { "right$", "function" },
			  { "rmdir", "keyword" },
			  { "rnd", "function" },
			  { "rset", "keyword" },
			  { "rtrim$", "function" },
			  { "run", "keyword" },
			  { "sadd", "keyword" },
			  { "screen", "keyword" },
			  { "seek", "keyword" },
			  { "seg", "keyword" },
			  { "select", "keyword" },
			  { "setmem", "keyword" },
			  { "sgn", "function" },
			  { "shared", "keyword" },
			  { "shell", "keyword" },
			  { "signal", "keyword" },
			  { "sin", "function" },
			  { "single", "keyword" },
			  { "sleep", "keyword" },
			  { "smooth", "keyword" },
			  { "sound", "keyword" },
			  { "space$", "function" },
			  { "spc", "keyword" },
			  { "sqr", "function" },
			  { "static", "keyword" },
			  { "step", "keyword" },
			  { "stick", "keyword" },
			  { "stop", "keyword" },
			  { "str$", "function" },
			  { "stretch", "keyword" },
			  { "strig", "function" },
			  { "string", "keyword" },
			  { "string$", "function" },
			  { "sub", "keyword" },
			  { "swap", "keyword" },
			  { "system", "keyword" },
			  { "tab", "function" },
			  { "tan", "function" },
			  { "then", "keyword" },
			  { "time$", "function" },
			  { "timer", "function" },
			  { "to", "keyword" },
			  { "troff", "keyword" },
			  { "tron", "keyword" },
			  { "type", "keyword" },
			  { "ubound", "function" },
			  { "ucase$", "function" },
			  { "uevent", "keyword" },
			  { "unlock", "keyword" },
			  { "until", "keyword" },
			  { "using", "keyword" },
			  { "val", "function" },
			  { "varptr", "function" },
			  { "varptr$", "function" },
			  { "varseg", "function" },
			  { "view", "keyword" },
			  { "wait", "keyword" },
			  { "wend", "keyword" },
			  { "while", "keyword" },
			  { "width", "keyword" },
			  { "window", "keyword" },
			  { "write", "keyword" },
			  { "xor", "keyword" },
			  { "_acceptfiledrop", "keyword" },
			  { "_acos", "function" },
			  { "_acosh", "function" },
			  { "_adler32", "keyword" },
			  { "_all", "keyword" },
			  { "_allowfullscreen", "keyword" },
			  { "_alpha", "function" },
			  { "_alpha32", "function" },
			  { "_andalso", "keyword" },
			  { "_anticlockwise", "keyword" },
			  { "_arccot", "function" },
			  { "_arccsc", "function" },
			  { "_arcsec", "function" },
			  { "_asin", "function" },
			  { "_asinh", "function" },
			  { "_assert", "keyword" },
			  { "_atan2", "function" },
			  { "_atanh", "function" },
			  { "_auto", "keyword" },
			  { "_autodisplay", "keyword" },
			  { "_axis", "keyword" },
			  { "_backgroundcolor", "function" },
			  { "_base64decode$", "function" },
			  { "_base64encode$", "function" },
			  { "_behind", "keyword" },
			  { "_bin$", "function" },
			  { "_bit", "keyword" },
			  { "_blend", "keyword" },
			  { "_blink", "keyword" },
			  { "_blue", "function" },
			  { "_blue32", "function" },
			  { "_brightness32", "keyword" },
			  { "_button", "function" },
			  { "_buttonchange", "function" },
			  { "_byte", "keyword" },
			  { "_capslock", "function" },
			  { "_cast", "function" },
			  { "_ceil", "function" },
			  { "_cinp", "keyword" },
			  { "_clamp", "keyword" },
			  { "_clear", "keyword" },
			  { "_clearcolor", "keyword" },
			  { "_clip", "keyword" },
			  { "_clipboard$", "function" },
			  { "_clipboardimage", "function" },
			  { "_clockwise", "keyword" },
			  { "_colorchooserdialog", "function" },
			  { "_commandcount", "function" },
			  { "_connected", "function" },
			  { "_connectionaddress", "function" },
			  { "_connectionaddress$", "function" },
			  { "_console", "keyword" },
			  { "_consolecursor", "keyword" },
			  { "_consolefont", "keyword" },
			  { "_consoleinput", "function" },
			  { "_consoletitle", "keyword" },
			  { "_continue", "keyword" },
			  { "_controlchr", "function" },
			  { "_copyimage", "function" },
			  { "_copypalette", "keyword" },
			  { "_cosh", "function" },
			  { "_cot", "function" },
			  { "_coth", "function" },
			  { "_crc32", "function" },
			  { "_csc", "function" },
			  { "_csch", "function" },
			  { "_cv", "function" },
			  { "_cwd$", "function" },
			  { "_d2g", "function" },
			  { "_d2r", "function" },
			  { "_decodeurl$", "function" },
			  { "_defaultcolor", "function" },
			  { "_define", "keyword" },
			  { "_deflate$", "function" },
			  { "_delay", "keyword" },
			  { "_depthbuffer", "function" },
			  { "_desktopheight", "function" },
			  { "_desktopwidth", "function" },
			  { "_dest", "keyword" },
			  { "_device$", "function" },
			  { "_deviceinput", "function" },
			  { "_devices", "function" },
			  { "_dir$", "function" },
			  { "_direxists", "function" },
			  { "_display", "keyword" },
			  { "_displayorder", "keyword" },
			  { "_dontblend", "keyword" },
			  { "_dontwait", "keyword" },
			  { "_droppedfile", "function" },
			  { "_droppedfile$", "function" },
			  { "_echo", "keyword" },
			  { "_embedded$", "function" },
			  { "_encodeurl$", "function" },
			  { "_environcount", "function" },
			  { "_errorline", "function" },
			  { "_errormessage$", "function" },
			  { "_exit", "function" },
			  { "_explicit", "keyword" },
			  { "_explicitarray", "keyword" },
			  { "_fileexists", "function" },
			  { "_files$", "function" },
			  { "_fillbackground", "keyword" },
			  { "_finishdrop", "keyword" },
			  { "_float", "keyword" },
			  { "_font", "keyword" },
			  { "_fontheight", "function" },
			  { "_fontwidth", "function" },
			  { "_fps", "function" },
			  { "_freefont", "keyword" },
			  { "_freeimage", "keyword" },
			  { "_freetimer", "keyword" },
			  { "_fullpath$", "function" },
			  { "_fullscreen", "keyword" },
			  { "_g2d", "function" },
			  { "_g2r", "function" },
			  { "_glrender", "keyword" },
			  { "_green", "function" },
			  { "_green32", "function" },
			  { "_hardware", "keyword" },
			  { "_hardware1", "keyword" },
			  { "_height", "function" },
			  { "_hide", "keyword" },
			  { "_hsb32", "function" },
			  { "_hsba32", "function" },
			  { "_hue32", "function" },
			  { "_hypot", "function" },
			  { "_icon", "keyword" },
			  { "_iif", "function" },
			  { "_inclerrorfile$", "function" },
			  { "_inclerrorline", "function" },
			  { "_inflate$", "function" },
			  { "_inputbox$", "function" },
			  { "_instrrev", "function" },
			  { "_integer64", "keyword" },
			  { "_keepbackground", "keyword" },
			  { "_keyclear", "keyword" },
			  { "_keydown", "function" },
			  { "_keyhit", "function" },
			  { "_lastaxis", "function" },
			  { "_lastbutton", "function" },
			  { "_lasthandler", "keyword" },
			  { "_lastwheel", "function" },
			  { "_limit", "keyword" },
			  { "_loadfont", "function" },
			  { "_loadimage", "function" },
			  { "_logtrace", "keyword" },
			  { "_loginfo", "keyword" },
			  { "_logwarn", "keyword" },
			  { "_logerror", "keyword" },
			  { "_logminlevel", "keyword" },
			  { "_maptriangle", "keyword" },
			  { "_max", "function" },
			  { "_mapunicode", "keyword" },
			  { "_md5$", "function" },
			  { "_mem", "keyword" },
			  { "_memcopy", "keyword" },
			  { "_memelement", "function" },
			  { "_memexists", "function" },
			  { "_memfill", "keyword" },
			  { "_memfree", "keyword" },
			  { "_memget", "keyword" },
			  { "_memimage", "function" },
			  { "_memnew", "function" },
			  { "_memput", "keyword" },
			  { "_memsound", "function" },
			  { "_messagebox", "function" },
			  { "_middle", "keyword" },
			  { "_midisoundbank", "function" },
			  { "_min", "function" },
			  { "_mk$", "function" },
			  { "_mousebutton", "function" },
			  { "_mousehidden", "function" },
			  { "_mousehide", "keyword" },
			  { "_mouseinput", "function" },
			  { "_mousemove", "keyword" },
			  { "_mousemovementx", "function" },
			  { "_mousemovementy", "function" },
			  { "_mouseshow", "keyword" },
			  { "_mousewheel", "function" },
			  { "_mousex", "function" },
			  { "_mousey", "function" },
			  { "_negate", "keyword" },
			  { "_newhandler", "keyword" },
			  { "_newimage", "function" },
			  { "_none", "keyword" },
			  { "_notifypopup", "keyword" },
			  { "_numlock", "function" },
			  { "_off", "keyword" },
			  { "_offset", "function" },
			  { "_only", "keyword" },
			  { "_onlybackground", "keyword" },
			  { "_ontop", "keyword" },
			  { "_openclient", "function" },
			  { "_openconnection", "function" },
			  { "_openfiledialog$", "function" },
			  { "_openhost", "function" },
			  { "_orelse", "keyword" },
			  { "_os$", "function" },
			  { "_palettecolor", "function" },
			  { "_pi", "function" },
			  { "_pixelsize", "function" },
			  { "_preserve", "keyword" },
			  { "_printimage", "keyword" },
			  { "_printmode", "keyword" },
			  { "_printstring", "keyword" },
			  { "_printwidth", "function" },
			  { "_putimage", "keyword" },
			  { "_r2d", "function" },
			  { "_r2g", "function" },
			  { "_readbit", "function" },
			  { "_readfile$", "function" },
			  { "_red", "function" },
			  { "_red32", "function" },
			  { "_resetbit", "function" },
			  { "_resize", "keyword" },
			  { "_resizeheight", "function" },
			  { "_resizewidth", "function" },
			  { "_rgb", "function" },
			  { "_rgb32", "function" },
			  { "_rgba", "function" },
			  { "_rgba32", "function" },
			  { "_rol", "function" },
			  { "_ror", "function" },
			  { "_round", "function" },
			  { "_saturation32", "function" },
			  { "_savefiledialog$", "function" },
			  { "_saveimage", "keyword" },
			  { "_scaledheight", "function" },
			  { "_scaledwidth", "function" },
			  { "_screenclick", "keyword" },
			  { "_screenexists", "function" },
			  { "_screenhide", "keyword" },
			  { "_screenicon", "function" },
			  { "_screenimage", "function" },
			  { "_screenmove", "keyword" },
			  { "_screenprint", "keyword" },
			  { "_screenshow", "keyword" },
			  { "_screenx", "function" },
			  { "_screeny", "function" },
			  { "_scrolllock", "function" },
			  { "_seamless", "keyword" },
			  { "_sec", "function" },
			  { "_sech", "function" },
			  { "_selectfolderdialog$", "function" },
			  { "_setalpha", "keyword" },
			  { "_setbit", "function" },
			  { "_shellhide", "keyword" },
			  { "_shl", "function" },
			  { "_show", "keyword" },
			  { "_shr", "function" },
			  { "_sinh", "function" },
			  { "_smooth", "keyword" },
			  { "_smoothshrunk", "keyword" },
			  { "_smoothstretched", "keyword" },
			  { "_sndbal", "keyword" },
			  { "_sndclose", "keyword" },
			  { "_sndcopy", "function" },
			  { "_sndgetpos", "function" },
			  { "_sndlen", "function" },
			  { "_sndlimit", "keyword" },
			  { "_sndloop", "keyword" },
			  { "_sndnew", "function" },
			  { "_sndopen", "function" },
			  { "_sndopenraw", "function" },
			  { "_sndpause", "keyword" },
			  { "_sndpaused", "function" },
			  { "_sndplay", "keyword" },
			  { "_sndplaycopy", "keyword" },
			  { "_sndplayfile", "keyword" },
			  { "_sndplaying", "function" },
			  { "_sndrate", "function" },
			  { "_sndraw", "keyword" },
			  { "_sndrawbatch", "keyword" },
			  { "_sndrawdone", "keyword" },
			  { "_sndrawlen", "function" },
			  { "_sndsetpos", "keyword" },
			  { "_sndstop", "keyword" },
			  { "_sndvol", "keyword" },
			  { "_software", "keyword" },
			  { "_source", "function" },
			  { "_squarepixels", "keyword" },
			  { "_startdir$", "function" },
			  { "_statuscode", "function" },
			  { "_strcmp", "function" },
			  { "_stretch", "keyword" },
			  { "_stricmp", "function" },
			  { "_tanh", "function" },
			  { "_title", "keyword" },
			  { "_title$", "function" },
			  { "_toggle", "keyword" },
			  { "_togglebit", "function" },
			  { "_tostr$", "function" },
			  { "_totaldroppedfiles", "function" },
			  { "_trim$", "function" },
			  { "_ucharpos", "function" },
			  { "_ufontheight", "function" },
			  { "_ulinespacing", "function" },
			  { "_unsigned", "keyword" },
			  { "_uprintstring", "keyword" },
			  { "_uprintwidth", "function" },
			  { "_wave", "keyword" },
			  { "_wheel", "function" },
			  { "_width", "function" },
			  { "_windowhandle", "function" },
			  { "_windowhasfocus", "function" },
			  { "_writefile", "keyword" },

			  { "32bit", "literal" },
			  { "64bit", "literal" },
			  { "_arm_", "literal" },
			  { "_asserts_", "literal" },
			  { "_console_", "literal" },
			  { "_debug_", "literal" },
			  { "defined", "literal" },
			  { "_explicit_", "literal" },
			  { "_explicitarray_", "literal" },
			  { "linux", "literal" },
			  { "mac", "literal" },
			  { "macosx", "literal" },
			  { "_qb64pe_", "literal" },
			  { "undefined", "literal" },
			  { "version", "literal" },
			  { "win", "literal" },
			  { "windows", "literal" },
			  { "_asc_ack", "literal" },
			  { "_asc_ampersand", "literal" },
			  { "_asc_apostrophe", "literal" },
			  { "_asc_asterisk", "literal" },
			  { "_asc_atsign", "literal" },
			  { "_asc_backslash", "literal" },
			  { "_asc_bel", "literal" },
			  { "_asc_bs", "literal" },
			  { "_asc_can", "literal" },
			  { "_asc_caret", "literal" },
			  { "_asc_colon", "literal" },
			  { "_asc_comma", "literal" },
			  { "_asc_cr", "literal" },
			  { "_asc_dc1", "literal" },
			  { "_asc_dc2", "literal" },
			  { "_asc_dc3", "literal" },
			  { "_asc_dc4", "literal" },
			  { "_asc_del", "literal" },
			  { "_asc_dle", "literal" },
			  { "_asc_dollar", "literal" },
			  { "_asc_em", "literal" },
			  { "_asc_enq", "literal" },
			  { "_asc_eot", "literal" },
			  { "_asc_equal", "literal" },
			  { "_asc_esc", "literal" },
			  { "_asc_etb", "literal" },
			  { "_asc_etx", "literal" },
			  { "_asc_exclamation", "literal" },
			  { "_asc_ff", "literal" },
			  { "_asc_forwardslash", "literal" },
			  { "_asc_fs", "literal" },
			  { "_asc_fullstop", "literal" },
			  { "_asc_grave", "literal" },
			  { "_asc_greaterthan", "literal" },
			  { "_asc_gs", "literal" },
			  { "_asc_hash", "literal" },
			  { "_asc_ht", "literal" },
			  { "_asc_leftbracket", "literal" },
			  { "_asc_leftcurlybracket", "literal" },
			  { "_asc_leftsquarebracket", "literal" },
			  { "_asc_lessthan", "literal" },
			  { "_asc_lf", "literal" },
			  { "_asc_minus", "literal" },
			  { "_asc_nak", "literal" },
			  { "_asc_nul", "literal" },
			  { "_asc_percent", "literal" },
			  { "_asc_plus", "literal" },
			  { "_asc_question", "literal" },
			  { "_asc_quote", "literal" },
			  { "_asc_rightbracket", "literal" },
			  { "_asc_rightcurlybracket", "literal" },
			  { "_asc_rightsquarebracket", "literal" },
			  { "_asc_rs", "literal" },
			  { "_asc_semicolon", "literal" },
			  { "_asc_si", "literal" },
			  { "_asc_so", "literal" },
			  { "_asc_soh", "literal" },
			  { "_asc_space", "literal" },
			  { "_asc_stx", "literal" },
			  { "_asc_sub", "literal" },
			  { "_asc_syn", "literal" },
			  { "_asc_tilde", "literal" },
			  { "_asc_underscore", "literal" },
			  { "_asc_us", "literal" },
			  { "_asc_verticalbar", "literal" },
			  { "_asc_vt", "literal" },
			  { "_bit_max`", "literal" },
			  { "_bit_min`", "literal" },
			  { "_byte_max%%", "literal" },
			  { "_byte_min%%", "literal" },
			  { "_chr_ack", "literal" },
			  { "_chr_ampersand", "literal" },
			  { "_chr_apostrophe", "literal" },
			  { "_chr_asterisk", "literal" },
			  { "_chr_atsign", "literal" },
			  { "_chr_backslash", "literal" },
			  { "_chr_bel", "literal" },
			  { "_chr_bs", "literal" },
			  { "_chr_can", "literal" },
			  { "_chr_caret", "literal" },
			  { "_chr_colon", "literal" },
			  { "_chr_comma", "literal" },
			  { "_chr_cr", "literal" },
			  { "_chr_dc1", "literal" },
			  { "_chr_dc2", "literal" },
			  { "_chr_dc3", "literal" },
			  { "_chr_dc4", "literal" },
			  { "_chr_del", "literal" },
			  { "_chr_dle", "literal" },
			  { "_chr_dollar", "literal" },
			  { "_chr_em", "literal" },
			  { "_chr_enq", "literal" },
			  { "_chr_eot", "literal" },
			  { "_chr_equal", "literal" },
			  { "_chr_esc", "literal" },
			  { "_chr_etb", "literal" },
			  { "_chr_etx", "literal" },
			  { "_chr_exclamation", "literal" },
			  { "_chr_ff", "literal" },
			  { "_chr_forwardslash", "literal" },
			  { "_chr_fs", "literal" },
			  { "_chr_fullstop", "literal" },
			  { "_chr_grave", "literal" },
			  { "_chr_greaterthan", "literal" },
			  { "_chr_gs", "literal" },
			  { "_chr_hash", "literal" },
			  { "_chr_ht", "literal" },
			  { "_chr_leftbracket", "literal" },
			  { "_chr_leftcurlybracket", "literal" },
			  { "_chr_leftsquarebracket", "literal" },
			  { "_chr_lessthan", "literal" },
			  { "_chr_lf", "literal" },
			  { "_chr_minus", "literal" },
			  { "_chr_nak", "literal" },
			  { "_chr_nul", "literal" },
			  { "_chr_percent", "literal" },
			  { "_chr_plus", "literal" },
			  { "_chr_question", "literal" },
			  { "_chr_quote", "literal" },
			  { "_chr_rightbracket", "literal" },
			  { "_chr_rightcurlybracket", "literal" },
			  { "_chr_rightsquarebracket", "literal" },
			  { "_chr_rs", "literal" },
			  { "_chr_semicolon", "literal" },
			  { "_chr_si", "literal" },
			  { "_chr_so", "literal" },
			  { "_chr_soh", "literal" },
			  { "_chr_space", "literal" },
			  { "_chr_stx", "literal" },
			  { "_chr_sub", "literal" },
			  { "_chr_syn", "literal" },
			  { "_chr_tilde", "literal" },
			  { "_chr_underscore", "literal" },
			  { "_chr_us", "literal" },
			  { "_chr_verticalbar", "literal" },
			  { "_chr_vt", "literal" },
			  { "_client_failed", "literal" },
			  { "_connection_failed", "literal" },
			  { "_days_in_leapyear", "literal" },
			  { "_days_in_week", "literal" },
			  { "_days_in_year", "literal" },
			  { "_double_max#", "literal" },
			  { "_double_min#", "literal" },
			  { "_double_min_frac#", "literal" },
			  { "_e##", "literal" },
			  { "_equal", "literal" },
			  { "_err_argument_count_mismatch", "literal" },
			  { "_err_array_not_defined", "literal" },
			  { "_err_bad_file_mode", "literal" },
			  { "_err_bad_file_name", "literal" },
			  { "_err_bad_file_name_or_number", "literal" },
			  { "_err_bad_record_length", "literal" },
			  { "_err_bad_record_number", "literal" },
			  { "_err_cannot_continue", "literal" },
			  { "_err_communication_buffer_overflow", "literal" },
			  { "_err_device_fault", "literal" },
			  { "_err_device_io_error", "literal" },
			  { "_err_device_timeout", "literal" },
			  { "_err_device_unavailable", "literal" },
			  { "_err_disk_full", "literal" },
			  { "_err_disk_media_error", "literal" },
			  { "_err_disk_not_ready", "literal" },
			  { "_err_division_by_zero", "literal" },
			  { "_err_duplicate_definition", "literal" },
			  { "_err_duplicate_label", "literal" },
			  { "_err_feature_unavailable", "literal" },
			  { "_err_field_overflow", "literal" },
			  { "_err_field_statement_active", "literal" },
			  { "_err_file_already_exists", "literal" },
			  { "_err_file_already_open", "literal" },
			  { "_err_file_not_found", "literal" },
			  { "_err_for_without_next", "literal" },
			  { "_err_function_not_defined", "literal" },
			  { "_err_illegal_function_call", "literal" },
			  { "_err_illegal_in_direct_mode", "literal" },
			  { "_err_input_past_end_of_file", "literal" },
			  { "_err_internal_error", "literal" },
			  { "_err_invalid_handle", "literal" },
			  { "_err_label_not_defined", "literal" },
			  { "_err_next_without_for", "literal" },
			  { "_err_no_resume", "literal" },
			  { "_err_none", "literal" },
			  { "_err_out_of_data", "literal" },
			  { "_err_out_of_memory", "literal" },
			  { "_err_out_of_paper", "literal" },
			  { "_err_out_of_string_space", "literal" },
			  { "_err_overflow", "literal" },
			  { "_err_path_file_access_error", "literal" },
			  { "_err_path_not_found", "literal" },
			  { "_err_permission_denied", "literal" },
			  { "_err_rename_across_disks", "literal" },
			  { "_err_resume_without_error", "literal" },
			  { "_err_return_without_gosub", "literal" },
			  { "_err_string_formula_too_complex", "literal" },
			  { "_err_subprogram_not_defined", "literal" },
			  { "_err_subscript_out_of_range", "literal" },
			  { "_err_syntax_error", "literal" },
			  { "_err_too_many_files", "literal" },
			  { "_err_type_mismatch", "literal" },
			  { "_err_variable_required", "literal" },
			  { "_err_wend_without_while", "literal" },
			  { "_err_while_without_wend", "literal" },
			  { "_false", "literal" },
			  { "_float_max##", "literal" },
			  { "_float_min##", "literal" },
			  { "_float_min_frac##", "literal" },
			  { "_greater", "literal" },
			  { "_host_failed", "literal" },
			  { "_hours_in_day", "literal" },
			  { "_hours_in_leapyear", "literal" },
			  { "_hours_in_week", "literal" },
			  { "_hours_in_year", "literal" },
			  { "_integer64_max&&", "literal" },
			  { "_integer64_min&&", "literal" },
			  { "_integer_max%", "literal" },
			  { "_integer_min%", "literal" },
			  { "_invalid_image", "literal" },
			  { "_key_backspace", "literal" },
			  { "_key_delete", "literal" },
			  { "_key_down", "literal" },
			  { "_key_end", "literal" },
			  { "_key_enter", "literal" },
			  { "_key_esc", "literal" },
			  { "_key_f1", "literal" },
			  { "_key_f10", "literal" },
			  { "_key_f11", "literal" },
			  { "_key_f12", "literal" },
			  { "_key_f2", "literal" },
			  { "_key_f3", "literal" },
			  { "_key_f4", "literal" },
			  { "_key_f5", "literal" },
			  { "_key_f6", "literal" },
			  { "_key_f7", "literal" },
			  { "_key_f8", "literal" },
			  { "_key_f9", "literal" },
			  { "_key_home", "literal" },
			  { "_key_insert", "literal" },
			  { "_key_lalt", "literal" },
			  { "_key_lapple", "literal" },
			  { "_key_lctrl", "literal" },
			  { "_key_left", "literal" },
			  { "_key_lshift", "literal" },
			  { "_key_pagedown", "literal" },
			  { "_key_pageup", "literal" },
			  { "_key_ralt", "literal" },
			  { "_key_rapple", "literal" },
			  { "_key_rctrl", "literal" },
			  { "_key_right", "literal" },
			  { "_key_rshift", "literal" },
			  { "_key_tab", "literal" },
			  { "_key_up", "literal" },
			  { "_less", "literal" },
			  { "_loadfont_failed", "literal" },
			  { "_log_error", "literal" },
			  { "_log_info", "literal" },
			  { "_log_none", "literal" },
			  { "_log_trace", "literal" },
			  { "_log_warn", "literal" },
			  { "_long_max&", "literal" },
			  { "_long_min&", "literal" },
			  { "_mins_in_day", "literal" },
			  { "_mins_in_hour", "literal" },
			  { "_mins_in_leapyear", "literal" },
			  { "_mins_in_week", "literal" },
			  { "_mins_in_year", "literal" },
			  { "_offset_max&", "literal" },
			  { "_offset_max&&", "literal" },
			  { "_offset_min&", "literal" },
			  { "_offset_min&&", "literal" },
			  { "_one_eb", "literal" },
			  { "_one_gb", "literal" },
			  { "_one_kb", "literal" },
			  { "_one_mb", "literal" },
			  { "_one_pb", "literal" },
			  { "_one_tb", "literal" },
			  { "_secs_in_day", "literal" },
			  { "_secs_in_hour", "literal" },
			  { "_secs_in_leapyear", "literal" },
			  { "_secs_in_min", "literal" },
			  { "_secs_in_week", "literal" },
			  { "_secs_in_year", "literal" },
			  { "_single_max!", "literal" },
			  { "_single_min!", "literal" },
			  { "_single_min_frac!", "literal" },
			  { "_size_of_byte", "literal" },
			  { "_size_of_double", "literal" },
			  { "_size_of_float", "literal" },
			  { "_size_of_integer", "literal" },
			  { "_size_of_integer64", "literal" },
			  { "_size_of_long", "literal" },
			  { "_size_of_offset", "literal" },
			  { "_size_of_single", "literal" },
			  { "_sndopen_failed", "literal" },
			  { "_str_crlf", "literal" },
			  { "_str_empty", "literal" },
			  { "_str_lf", "literal" },
			  { "_str_nat_eol", "literal" },
			  { "_true", "literal" },
			  { "_ubit_max~`", "literal" },
			  { "_ubit_min~`", "literal" },
			  { "_ubyte_max~%%", "literal" },
			  { "_ubyte_min~%%", "literal" },
			  { "_uinteger64_max~&&", "literal" },
			  { "_uinteger64_min~&&", "literal" },
			  { "_uinteger_max~%", "literal" },
			  { "_uinteger_min~%", "literal" },
			  { "_ulong_max~&", "literal" },
			  { "_ulong_min~&", "literal" },
			  { "_uoffset_max~&", "literal" },
			  { "_uoffset_max~&&", "literal" },
			  { "_uoffset_min~&", "literal" },
			  { "_uoffset_min~&&", "literal" },
			  { "_weeks_in_leapyear", "literal" },
			  { "_weeks_in_year", "literal" },

		  },
		  "'",
		  {}

		} );

	sd.setCaseInsensitive( true );
	return sd;
}

}}}} // namespace EE::UI::Doc::Language
