"""
A list of a built-in variables in Lua, minus some ones not defined in CC
"""

from typing import Dict


_lua51: str = "https://www.lua.org/manual/5.1/manual.html#"
_lua52: str = "https://www.lua.org/manual/5.2/manual.html#"
_lua53: str = "https://www.lua.org/manual/5.3/manual.html#"


NAMES: Dict[str, str] = {
    "coroutine": _lua51 + "5.2",
    "debug": _lua51 + "5.9",
    "math": _lua51 + "5.6",
    "package": _lua51 + "5.3",
    "string": _lua51 + "5.4",
    "table": _lua51 + "5.5",
    "bit32": _lua52 + "6.7",
    "utf8": _lua53 + "6.5",
}

for name in (
    "_G",
    "_VERSION",
    "assert",
    "collectgarbage",
    "coroutine.create",
    "coroutine.resume" "coroutine.running",
    "coroutine.status",
    "coroutine.wrap",
    "coroutine.yield",
    "debug.debug",
    "debug.getfenv",
    "debug.gethook",
    "debug.getinfo",
    "debug.getlocal",
    "debug.getmetatable",
    "debug.getregistry",
    "debug.getupvalue",
    "debug.setfenv",
    "debug.sethook",
    "debug.setlocal",
    "debug.setmetatable",
    "debug.setupvalue",
    "debug.traceback",
    "dofile",
    "error",
    "getfenv",
    "getmetatable",
    "ipairs",
    "load",
    "loadfile",
    "loadstring",
    "math.abs",
    "math.acos",
    "math.asin",
    "math.atan",
    "math.atan2",
    "math.ceil",
    "math.cos",
    "math.cosh",
    "math.deg",
    "math.exp",
    "math.floor",
    "math.fmod",
    "math.frexp",
    "math.huge",
    "math.ldexp",
    "math.log",
    "math.log10",
    "math.max",
    "math.min",
    "math.modf",
    "math.pi",
    "math.pow",
    "math.rad",
    "math.random",
    "math.randomseed",
    "math.sin",
    "math.sinh",
    "math.sqrt",
    "math.tan",
    "math.tanh",
    "next",
    "package.cpath",
    "package.loaded",
    "package.loaders",
    "package.loadlib",
    "package.path",
    "package.preload",
    "package.seeall",
    "pairs",
    "pcall",
    "print",
    "rawequal",
    "rawget",
    "rawset",
    "require",
    "select",
    "setfenv",
    "setmetatable",
    "string.byte",
    "string.char",
    "string.dump",
    "string.find",
    "string.format",
    "string.gmatch",
    "string.gsub",
    "string.len",
    "string.lower",
    "string.match",
    "string.rep",
    "string.reverse",
    "string.sub",
    "string.upper",
    "table.concat",
    "table.insert",
    "table.maxn",
    "table.remove",
    "table.sort",
    "tonumber",
    "tostring",
    "type",
    "unpack",
    "xpcall",
):
    NAMES[name] = _lua51 + "pdf-" + name

for name in (
    "bit32.arshift",
    "bit32.band",
    "bit32.bnot",
    "bit32.bor",
    "bit32.btest",
    "bit32.bxor",
    "bit32.extract",
    "bit32.lrotate",
    "bit32.lshift",
    "bit32.replace",
    "bit32.rrotate",
    "bit32.rshift",
    "table.pack",
    "table.unpack",
):
    NAMES[name] = _lua52 + "pdf-" + name


for name in (
    "utf8.char",
    "utf8.charpattern",
    "utf8.codepoint",
    "utf8.codes",
    "utf8.len",
    "utf8.offset",
):
    NAMES[name] = _lua53 + "pdf-" + name

"""
A list of a built-in variables in Lua, minus some ones not defined in CC
"""

from typing import Dict


_lua51: str = "https://www.lua.org/manual/5.1/manual.html#"
_lua52: str = "https://www.lua.org/manual/5.2/manual.html#"
_lua53: str = "https://www.lua.org/manual/5.3/manual.html#"


NAMES: Dict[str, str] = {
    "coroutine": _lua51 + "5.2",
    "debug": _lua51 + "5.9",
    "math": _lua51 + "5.6",
    "package": _lua51 + "5.3",
    "string": _lua51 + "5.4",
    "table": _lua51 + "5.5",
    "bit32": _lua52 + "6.7",
    "utf8": _lua53 + "6.5",
}

for name in (
    "_G",
    "_VERSION",
    "assert",
    "collectgarbage",
    "coroutine.create",
    "coroutine.resume" "coroutine.running",
    "coroutine.status",
    "coroutine.wrap",
    "coroutine.yield",
    "debug.debug",
    "debug.getfenv",
    "debug.gethook",
    "debug.getinfo",
    "debug.getlocal",
    "debug.getmetatable",
    "debug.getregistry",
    "debug.getupvalue",
    "debug.setfenv",
    "debug.sethook",
    "debug.setlocal",
    "debug.setmetatable",
    "debug.setupvalue",
    "debug.traceback",
    "dofile",
    "error",
    "getfenv",
    "getmetatable",
    "ipairs",
    "load",
    "loadfile",
    "loadstring",
    "math.abs",
    "math.acos",
    "math.asin",
    "math.atan",
    "math.atan2",
    "math.ceil",
    "math.cos",
    "math.cosh",
    "math.deg",
    "math.exp",
    "math.floor",
    "math.fmod",
    "math.frexp",
    "math.huge",
    "math.ldexp",
    "math.log",
    "math.log10",
    "math.max",
    "math.min",
    "math.modf",
    "math.pi",
    "math.pow",
    "math.rad",
    "math.random",
    "math.randomseed",
    "math.sin",
    "math.sinh",
    "math.sqrt",
    "math.tan",
    "math.tanh",
    "next",
    "package.cpath",
    "package.loaded",
    "package.loaders",
    "package.loadlib",
    "package.path",
    "package.preload",
    "package.seeall",
    "pairs",
    "pcall",
    "print",
    "rawequal",
    "rawget",
    "rawset",
    "require",
    "select",
    "setfenv",
    "setmetatable",
    "string.byte",
    "string.char",
    "string.dump",
    "string.find",
    "string.format",
    "string.gmatch",
    "string.gsub",
    "string.len",
    "string.lower",
    "string.match",
    "string.rep",
    "string.reverse",
    "string.sub",
    "string.upper",
    "table.concat",
    "table.insert",
    "table.maxn",
    "table.remove",
    "table.sort",
    "tonumber",
    "tostring",
    "type",
    "unpack",
    "xpcall",
):
    NAMES[name] = _lua51 + "pdf-" + name

for name in (
    "bit32.arshift",
    "bit32.band",
    "bit32.bnot",
    "bit32.bor",
    "bit32.btest",
    "bit32.bxor",
    "bit32.extract",
    "bit32.lrotate",
    "bit32.lshift",
    "bit32.replace",
    "bit32.rrotate",
    "bit32.rshift",
    "table.pack",
    "table.unpack",
):
    NAMES[name] = _lua52 + "pdf-" + name


for name in (
    "utf8.char",
    "utf8.charpattern",
    "utf8.codepoint",
    "utf8.codes",
    "utf8.len",
    "utf8.offset",
):
    NAMES[name] = _lua53 + "pdf-" + name

A list of a built-in variables in Lua, minus some ones not defined in CC #" #" #"