def load(text, path, out):
    """Load a tmTheme property list and write errors to an output panel.

    :param text:
        The text of the file to be parsed.
    :param path:
        The path of the file, for error output purposes.
    :param out:
        OutputPanel instance.

    :return:
        `None` if errored, the parsed data otherwise (mostly a dict).
    """
    dirname = os.path.dirname(path)
    out.set_path(dirname, file_regex)
    if text.startswith('<?xml version="1.0" encoding="UTF-8"?>'):
        text = text[38:]

    try:
        from xml.parsers.expat import ExpatError, ErrorString
    except ImportError:
        # TODO: provide a compat plist parser as dependency
        # xml.parsers.expat is not available on certain Linux dists, try to use plist_parser then.
        # See https://github.com/SublimeText/AAAPackageDev/issues/19
        # Let's just hope AAAPackageDev is installed
        try:
            import plist_parser
        except ImportError:
            out.write_line("Unable to load xml.parsers.expat or plist_parser modules.\n"
                           "Please report to the package author.")
            return
        else:
            out.write_line("Unable to load plistlib, using plist_parser instead\n")

        try:
            data = plist_parser.parse_string(text)
        except plist_parser.PropertyListParseError as e:
            out.write_line((path, str(e)) % debug_base_2)
        else:
            return data
    else:
        import plistlib
        try:
            # This will try `from xml.parsers.expat import ParserCreate`
            # but since it is already tried above it should succeed.
            return plistlib.readPlistFromBytes(text.encode('utf-8'))
        except ExpatError as e:
            out.write_line(debug_base
                           % (path,
                              ErrorString(e.code),
                              e.lineno,
                              e.offset + 1)
                           )
dataset/ETHPy150Open FichteFoll/CSScheme/converters/tmtheme.py/load/swapped operands of `%`