"""A list of all builtin modules."""

from __future__ import annotations

import sys

BUILTINS: frozenset[str]
if sys.version_info >= (3, 10):
    BUILTINS = frozenset(sys.stdlib_module_names)  # pylint: disable=no-member
else:
    # Use the list of builtins from Python 3.9
    BUILTINS = frozenset(  # pragma: no cover
        [
            "__future__",
            "_abc",
            "_aix_support",
            "_ast",
            "_asyncio",
            "_bisect",
            "_blake2",
            "_bootlocale",
            "_bootsubprocess",
            "_bz2",
            "_codecs",
            "_codecs_cn",
            "_codecs_hk",
            "_codecs_iso2022",
            "_codecs_jp",
            "_codecs_kr",
            "_codecs_tw",
            "_collections",
            "_collections_abc",
            "_compat_pickle",
            "_compression",
            "_contextvars",
            "_crypt",
            "_csv",
            "_ctypes",
            "_ctypes_test",
            "_curses",
            "_curses_panel",
            "_datetime",
            "_dbm",
            "_decimal",
            "_distutils_hack",
            "_elementtree",
            "_functools",
            "_gdbm",
            "_hashlib",
            "_heapq",
            "_imp",
            "_io",
            "_json",
            "_locale",
            "_lsprof",
            "_lzma",
            "_markupbase",
            "_md5",
            "_multibytecodec",
            "_multiprocessing",
            "_opcode",
            "_operator",
            "_osx_support",
            "_peg_parser",
            "_pickle",
            "_posixshmem",
            "_posixsubprocess",
            "_py_abc",
            "_pydecimal",
            "_pyio",
            "_queue",
            "_random",
            "_scproxy",
            "_sha1",
            "_sha256",
            "_sha3",
            "_sha512",
            "_signal",
            "_sitebuiltins",
            "_socket",
            "_sqlite3",
            "_sre",
            "_ssl",
            "_stat",
            "_statistics",
            "_string",
            "_strptime",
            "_struct",
            "_symtable",
            "_sysconfigdata__darwin_darwin",
            "_testbuffer",
            "_testcapi",
            "_testimportmultiple",
            "_testinternalcapi",
            "_testmultiphase",
            "_thread",
            "_threading_local",
            "_tkinter",
            "_tracemalloc",
            "_uuid",
            "_virtualenv",
            "_warnings",
            "_weakref",
            "_weakrefset",
            "_xxsubinterpreters",
            "_xxtestfuzz",
            "_zoneinfo",
            "abc",
            "aifc",
            "antigravity",
            "argparse",
            "array",
            "ast",
            "asynchat",
            "asyncio",
            "asyncore",
            "atexit",
            "audioop",
            "base64",
            "bdb",
            "binascii",
            "binhex",
            "bisect",
            "builtins",
            "bz2",
            "cProfile",
            "calendar",
            "cgi",
            "cgitb",
            "chunk",
            "cmath",
            "cmd",
            "code",
            "codecs",
            "codeop",
            "collections",
            "colorsys",
            "compileall",
            "concurrent",
            "configparser",
            "contextlib",
            "contextvars",
            "copy",
            "copyreg",
            "crypt",
            "csv",
            "ctypes",
            "curses",
            "dataclasses",
            "datetime",
            "dbm",
            "decimal",
            "difflib",
            "dis",
            "distutils",
            "doctest",
            "email",
            "encodings",
            "ensurepip",
            "enum",
            "errno",
            "faulthandler",
            "fcntl",
            "filecmp",
            "fileinput",
            "fnmatch",
            "formatter",
            "fractions",
            "ftplib",
            "functools",
            "gc",
            "genericpath",
            "getopt",
            "getpass",
            "gettext",
            "glob",
            "graphlib",
            "grp",
            "gzip",
            "hashlib",
            "heapq",
            "hmac",
            "html",
            "http",
            "idlelib",
            "imaplib",
            "imghdr",
            "imp",
            "importlib",
            "inspect",
            "io",
            "ipaddress",
            "itertools",
            "json",
            "keyword",
            "lib2to3",
            "linecache",
            "locale",
            "logging",
            "lzma",
            "mailbox",
            "mailcap",
            "marshal",
            "math",
            "memray",
            "mimetypes",
            "mmap",
            "modulefinder",
            "multiprocessing",
            "netrc",
            "nis",
            "nntplib",
            "ntpath",
            "nturl2path",
            "numbers",
            "opcode",
            "operator",
            "optparse",
            "os",
            "parser",
            "pathlib",
            "pdb",
            "pickle",
            "pickletools",
            "pip",
            "pipes",
            "pkg_resources",
            "pkgutil",
            "platform",
            "plistlib",
            "poplib",
            "posix",
            "posixpath",
            "pprint",
            "profile",
            "pstats",
            "pty",
            "pwd",
            "py_compile",
            "pyclbr",
            "pydoc",
            "pydoc_data",
            "pyexpat",
            "queue",
            "quopri",
            "random",
            "re",
            "readline",
            "reprlib",
            "resource",
            "rlcompleter",
            "runpy",
            "sched",
            "secrets",
            "select",
            "selectors",
            "setuptools",
            "shelve",
            "shlex",
            "shutil",
            "signal",
            "site",
            "smtpd",
            "smtplib",
            "sndhdr",
            "socket",
            "socketserver",
            "sqlite3",
            "sre_compile",
            "sre_constants",
            "sre_parse",
            "ssl",
            "stat",
            "statistics",
            "string",
            "stringprep",
            "struct",
            "subprocess",
            "sunau",
            "symbol",
            "symtable",
            "sys",
            "sysconfig",
            "syslog",
            "tabnanny",
            "tarfile",
            "telnetlib",
            "tempfile",
            "termios",
            "test",
            "textwrap",
            "this",
            "threading",
            "time",
            "timeit",
            "tkinter",
            "token",
            "tokenize",
            "trace",
            "traceback",
            "tracemalloc",
            "tty",
            "turtle",
            "turtledemo",
            "types",
            "typing",
            "unicodedata",
            "unittest",
            "urllib",
            "uu",
            "uuid",
            "venv",
            "warnings",
            "wave",
            "weakref",
            "webbrowser",
            "wheel",
            "wsgiref",
            "xdrlib",
            "xml",
            "xmlrpc",
            "xxlimited",
            "xxsubtype",
            "zipapp",
            "zipfile",
            "zipimport",
            "zlib",
            "zoneinfo",
        ],
    )
