Add project files.

This commit is contained in:
eviled 2026-01-02 18:12:41 -05:00
parent e776cc7163
commit 9cd3bc15c9
14 changed files with 27066 additions and 0 deletions

413
RA3MP3Playback.py Normal file
View file

@ -0,0 +1,413 @@
import threading
import time
import os
import sys
import random
import re
import tkinter as tk
from pathlib import Path
import queue
from tkinter import CURRENT
from pathlib import Path
os.environ["PYGAME_HIDE_SUPPORT_PROMPT"] = "1"
import pygame
import readchar
import winpty.ptyprocess
import winpty
# ========================= CONFIG =========================
DEBUG = True # Set True to enable debug overrides
# Default paths (used if not in debug mode)
DEFAULT_GAME_EXE = r".\RA3game.dll"
DEFAULT_PLAYLIST = r".\arena\music\playlist.txt"
DEFAULT_RA3_MAPS = r".\arena\music\ra3_maps.txt"
# Debug override paths
DEBUG_GAME_EXE = r"D:\GOG Games\Rocket Arena 3\RA3game.dll"
DEBUG_PLAYLIST = r"D:\GOG Games\Rocket Arena 3\arena\music\playlist.txt"
DEBUG_RA3_MAPS = r"D:\GOG Games\Rocket Arena 3\arena\music\ra3_maps.txt"
# Initial volume
VOLUME_STEP = 0.1 # step for W/S volume control
# ==========================================================
# ====================== GLOBAL STATE =====================
playlist = []
playlist_index = 0
current_mode = "shuffle" # sequential, shuffle, loop
volume = 0.5
is_playing = False
stop_flag = threading.Event()
serverstatus_sent = False
map_checked = False
current_map = "nomap"
current_song = "nosong"
playlist_path = "undefined"
ra3_maps = set()
song_queue = queue.Queue()
ANSI_ESCAPE_RE = re.compile(
r'''
\x1B(?:
[78] # ESC 7, ESC 8 (DEC save/restore)
| \[ [0-?]* [ -/]* [@-~] # CSI sequences
| \] .*? (?:\x07|\x1B\\) # OSC sequences
| [@-Z\\-_] # Other 7-bit C1 controls
)
''',
re.VERBOSE
)
# ==========================================================
# ===================== UTILITY FUNCTIONS =================
def strip_ansi(text: str) -> str:
return ANSI_ESCAPE_RE.sub("", text)
def playlist_watcher(path, poll_interval=1.0):
global playlist
try:
last_mtime = os.path.getmtime(path)
except FileNotFoundError:
last_mtime = 0
while not stop_flag.is_set():
try:
current_mtime = os.path.getmtime(path)
if current_mtime != last_mtime:
last_mtime = current_mtime
print("[DEBUG] Playlist file changed. Reloading playlist.")
playlist = load_playlist(path)
except FileNotFoundError:
pass # Playlist temporarily missing; ignore
time.sleep(poll_interval)
def track_watcher():
global is_playing
last_busy = False
while not stop_flag.is_set():
busy = pygame.mixer.music.get_busy()
if last_busy and not busy and is_playing:
# Track just finished
print("[DEBUG] Track finished. Advancing to next track.")
next_track()
last_busy = busy
time.sleep(0.1)
def parse_music_volume(line: str) -> float:
# Remove all ^<digit> color codes
clean_line = re.sub(r'\^\d', '', line)
# Extract the number inside quotes after "is:"
match = re.search(r'is\s*:\s*"(.*?)"', clean_line, re.IGNORECASE)
if not match:
#raise ValueError(f"Could not parse volume from line: {line}")
value_str = 0
else:
value_str = match.group(1)
try:
return float(value_str)
except ValueError:
raise ValueError(f"Invalid float value for volume: {value_str}")
def load_playlist(playlist_path):
global playlist_index
playlist_path = Path(playlist_path).resolve()
base_dir = playlist_path.parent
songs = []
with open(playlist_path, "r", encoding="utf-8") as f:
for line in f:
line = line.strip()
if not line:
continue
if line.startswith("#"):
continue
song_path = Path(line)
# If the playlist entry is relative, resolve it relative to playlist.txt
if not song_path.is_absolute():
song_path = base_dir / song_path
songs.append(str(song_path))
if current_mode == "shuffle":
random.shuffle(songs)
# Re-align song that's playing to new index
if current_song != "nosong":
_song_index = 0
_found_song = False
for s in songs:
_song_eval = Path(s).stem
if current_song == _song_eval:
_found_song = True
playlist_index = _song_index
break
_song_index += 1
if not _found_song:
playlist_index = 0
play_current()
return songs
def load_ra3_maps(path):
maps = set()
with open(path, "r", encoding="utf-8") as f:
for line in f:
line = line.strip()
if line:
maps.add(line.lower())
return maps
def next_track():
send_command(pty_proc,"s_musicvolume")
global playlist_index
if current_mode == "loop":
pass # keep same index
else:
playlist_index = (playlist_index + 1) % len(playlist)
play_current()
def previous_track():
send_command(pty_proc,"s_musicVolume")
global playlist_index
if current_mode == "loop":
pass # keep same index
else:
playlist_index = (playlist_index - 1) % len(playlist)
play_current()
def play_current():
#send_command(pty_proc,"s_musicVolume")
global is_playing, current_song
if not playlist:
return
track = playlist[playlist_index]
if not os.path.isfile(track):
print(f"[DEBUG] Track not found: {track}")
return
try:
pygame.mixer.music.load(track)
pygame.mixer.music.set_volume(volume)
pygame.mixer.music.play()
is_playing = True
current_song = Path(track).stem
print(f"[DEBUG] Playing: {current_song} at volume {volume}")
threading.Timer(.1, lambda: send_command(pty_proc,f"echo Playing: {current_song}")).start()
except Exception as e:
print(f"[DEBUG] Couldn't start MP3 player': {e}")
#send_command(pty_proc,f"echo Playing: {Path(track).stem}")
def stop_playback():
global is_playing
pygame.mixer.music.stop()
is_playing = False
def toggle_pause():
send_command(pty_proc,"s_musicVolume")
global is_playing
if pygame.mixer.music.get_busy():
pygame.mixer.music.pause()
is_playing = False
else:
pygame.mixer.music.unpause()
is_playing = True
def change_mode():
global current_mode, playlist_path, playlist
modes = ["sequential", "shuffle", "loop"]
idx = modes.index(current_mode)
current_mode = modes[(idx + 1) % len(modes)]
print(f"[DEBUG] Mode changed to: {current_mode}")
send_command(pty_proc,f"echo _musicmode {current_mode}")
playlist = load_playlist(playlist_path)
#def adjust_volume(up=True):
# global volume
# volume = min(1.0, max(0.0, volume + (VOLUME_STEP if up else -VOLUME_STEP)))
# pygame.mixer.music.set_volume(volume)
# print(f"[DEBUG] Volume: {volume:.2f}")
# ==========================================================
# ==================== QUAKE MONITOR ======================
def monitor_game(pty_proc):
global serverstatus_sent, map_checked
buffer = ""
while not stop_flag.is_set():
try:
data = pty_proc.read(1024)
if not data:
break
# Normalize to string
if isinstance(data, bytes):
data = data.decode(errors="ignore")
buffer += data
while "\n" in buffer:
line, buffer = buffer.split("\n", 1)
line = strip_ansi(line).strip()
if line:
#print(f"[GAME] {line}")
#print(f"[GAME RAW] {repr(line)}")
handle_game_line(line, pty_proc)
except EOFError:
break
def handle_game_line(line, pty_proc):
global volume, current_map
global serverstatus_sent, map_checked
if "--- Common Initialization Complete ---" in line:
threading.Timer(3.0, lambda: send_command(pty_proc,"s_musicVolume")).start()
if current_mode == "shuffle":
global playlist_index
playlist_index = random.randint(0, len(playlist) - 1)
threading.Timer(7.0, play_current).start()
elif line.startswith("s_musicVolume") and "\"s_musicVolume\" is:" in line:
svolume = parse_music_volume(line)
if svolume > 0:
if volume != svolume:
volume = svolume
pygame.mixer.music.set_volume(volume)
print(f"[DEBUG] Set music volume to {volume} by game client.")
elif line.startswith("]\\nexttrack"):
if current_map in ra3_maps:
next_track()
else:
threading.Timer(.1, lambda: send_command(pty_proc,f"echo Music controls only available for RA3 maps.")).start()
elif line.startswith("]\\prevtrack"):
if current_map in ra3_maps:
previous_track()
else:
threading.Timer(.1, lambda: send_command(pty_proc,f"echo Music controls only available for RA3 maps.")).start()
elif line.startswith("]\\pausetrack"):
if current_map in ra3_maps:
toggle_pause()
else:
threading.Timer(.1, lambda: send_command(pty_proc,f"echo Music controls only available for RA3 maps.")).start()
elif line.startswith("]\\musicmode"):
if current_map in ra3_maps:
change_mode()
else:
threading.Timer(.1, lambda: send_command(pty_proc,f"echo Music controls only available for RA3 maps.")).start()
elif line.startswith("Com_TouchMemory:"):
threading.Timer(1.0, lambda: send_command_and_mark(pty_proc)).start()
elif "mapname" in line.lower() and serverstatus_sent and not map_checked:
current_map = line.split()[-1].lower()
map_checked = True
if current_map in ra3_maps:
print(f"[DEBUG] Known map: {current_map}. Advancing track.")
next_track()
else:
print(f"[DEBUG] Unknown map: {current_map}. Stopping playback.")
stop_playback()
def send_command_and_mark(pty_proc):
global serverstatus_sent, map_checked
send_command(pty_proc, "serverstatus")
serverstatus_sent = True
map_checked = False
def send_command(pty_proc, cmd):
try:
pty_proc.write(("\x1bOF\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f\x7f" + cmd + "\n"))
pty_proc.flush()
print(f"[DEBUG] Sent command: {cmd}")
except Exception as e:
print(f"[DEBUG] Failed to send command: {e}")
# ==========================================================
# ==================== KEYBOARD HANDLER ===================
def keyboard_listener():
while not stop_flag.is_set():
key = readchar.readkey()
if key.lower() == '[':
previous_track()
elif key.lower() == ']':
next_track()
elif key == '\'':
toggle_pause()
elif key == '\\':
change_mode()
# ==========================================================
# ======================== MAIN ===========================
def main():
global playlist, ra3_maps, pty_proc, playlist_path
print(f"RA3 MP3 Player - returning RA3 to greatness!")
# Use debug paths if enabled
game_exe = DEBUG_GAME_EXE if DEBUG else DEFAULT_GAME_EXE
playlist_path = DEBUG_PLAYLIST if DEBUG else DEFAULT_PLAYLIST
ra3_maps_path = DEBUG_RA3_MAPS if DEBUG else DEFAULT_RA3_MAPS
# Load playlist and map list
playlist = load_playlist(playlist_path)
ra3_maps = load_ra3_maps(ra3_maps_path)
if not playlist:
print("Playlist is empty!")
return
if not ra3_maps:
print("RA3 maps list is empty!")
return
# Initialize pygame mixer
pygame.mixer.init()
# Start playlist watcher thread
playlist_thread = threading.Thread(target=playlist_watcher,args=(playlist_path,), daemon=True)
playlist_thread.start()
# Start keyboard listener thread
kb_thread = threading.Thread(target=keyboard_listener, daemon=True)
kb_thread.start()
# Start track watcher thread
watcher_thread = threading.Thread(target=track_watcher, daemon=True)
watcher_thread.start()
root = tk.Tk()
root.withdraw()
screenWidth = root.winfo_screenwidth()
screenHeight = root.winfo_screenheight()
# Launch quake process via PTY
try:
pty_proc = winpty.PtyProcess.spawn([game_exe, "+set", "r_mode", "-1", "+set", "r_customWidth", f"{screenWidth}", "+set", "r_customHeight", f"{screenHeight}"] + sys.argv[1:])
except Exception as e:
print(f"Failed to start game via PTY: {e}")
return
# Monitor the game output
try:
monitor_game(pty_proc)
except KeyboardInterrupt:
print("Exiting...")
finally:
stop_flag.set()
stop_playback()
pty_proc.close()
pygame.mixer.quit()
if __name__ == "__main__":
main()
# ==========================================================

35
RA3MP3Playback.pyproj Normal file
View file

@ -0,0 +1,35 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>87ef45f3-101d-4df7-9909-5bfe733259e3</ProjectGuid>
<ProjectHome>.</ProjectHome>
<StartupFile>RA3MP3Playback.py</StartupFile>
<SearchPath>
</SearchPath>
<WorkingDirectory>.</WorkingDirectory>
<OutputPath>.</OutputPath>
<Name>RA3MP3Playback</Name>
<RootNamespace>RA3MP3Playback</RootNamespace>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<DebugSymbols>true</DebugSymbols>
<EnableUnmanagedDebugging>false</EnableUnmanagedDebugging>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
<DebugSymbols>true</DebugSymbols>
<EnableUnmanagedDebugging>false</EnableUnmanagedDebugging>
</PropertyGroup>
<ItemGroup>
<Compile Include="RA3MP3Playback.py" />
</ItemGroup>
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\Python Tools\Microsoft.PythonTools.targets" />
<!-- Uncomment the CoreCompile target to enable the Build command in
Visual Studio and specify your pre- and post-build commands in
the BeforeBuild and AfterBuild targets below. -->
<!--<Target Name="CoreCompile" />-->
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
</Project>

23
RA3MP3Playback.sln Normal file
View file

@ -0,0 +1,23 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.13.35825.156 d17.13
MinimumVisualStudioVersion = 10.0.40219.1
Project("{888888A0-9F3D-457C-B088-3A5042F75D52}") = "RA3MP3Playback", "RA3MP3Playback.pyproj", "{87EF45F3-101D-4DF7-9909-5BFE733259E3}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{87EF45F3-101D-4DF7-9909-5BFE733259E3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{87EF45F3-101D-4DF7-9909-5BFE733259E3}.Release|Any CPU.ActiveCfg = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {7BF218D6-095D-476F-9C55-F2C22D8B6698}
EndGlobalSection
EndGlobal

47
RA3MP3Playback.spec Normal file
View file

@ -0,0 +1,47 @@
# -*- mode: python ; coding: utf-8 -*-
from PyInstaller.utils.hooks import collect_all
datas = []
binaries = []
hiddenimports = []
tmp_ret = collect_all('readchar')
datas += tmp_ret[0]; binaries += tmp_ret[1]; hiddenimports += tmp_ret[2]
tmp_ret = collect_all('winpty')
datas += tmp_ret[0]; binaries += tmp_ret[1]; hiddenimports += tmp_ret[2]
a = Analysis(
['RA3MP3Playback.py'],
pathex=[],
binaries=binaries,
datas=datas,
hiddenimports=hiddenimports,
hookspath=[],
hooksconfig={},
runtime_hooks=[],
excludes=[],
noarchive=False,
optimize=0,
)
pyz = PYZ(a.pure)
exe = EXE(
pyz,
a.scripts,
a.binaries,
a.datas,
[],
name='RA3MP3Playback',
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=True,
upx_exclude=[],
runtime_tmpdir=None,
console=True,
disable_windowed_traceback=False,
argv_emulation=False,
target_arch=None,
codesign_identity=None,
entitlements_file=None,
)

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

Binary file not shown.

View file

@ -0,0 +1,920 @@
('C:\\Users\\Ed\\source\\repos\\RA3MP3Playback\\build\\RA3MP3Playback\\PYZ-00.pyz',
[('__future__',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\__future__.py',
'PYMODULE'),
('_aix_support',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\_aix_support.py',
'PYMODULE'),
('_bootsubprocess',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\_bootsubprocess.py',
'PYMODULE'),
('_compat_pickle',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\_compat_pickle.py',
'PYMODULE'),
('_compression',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\_compression.py',
'PYMODULE'),
('_osx_support',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\_osx_support.py',
'PYMODULE'),
('_py_abc',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\_py_abc.py',
'PYMODULE'),
('_pydecimal',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\_pydecimal.py',
'PYMODULE'),
('_strptime',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\_strptime.py',
'PYMODULE'),
('_threading_local',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\_threading_local.py',
'PYMODULE'),
('argparse',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\argparse.py',
'PYMODULE'),
('ast',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\ast.py',
'PYMODULE'),
('asyncio',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\__init__.py',
'PYMODULE'),
('asyncio.base_events',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\base_events.py',
'PYMODULE'),
('asyncio.base_futures',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\base_futures.py',
'PYMODULE'),
('asyncio.base_subprocess',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\base_subprocess.py',
'PYMODULE'),
('asyncio.base_tasks',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\base_tasks.py',
'PYMODULE'),
('asyncio.constants',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\constants.py',
'PYMODULE'),
('asyncio.coroutines',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\coroutines.py',
'PYMODULE'),
('asyncio.events',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\events.py',
'PYMODULE'),
('asyncio.exceptions',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\exceptions.py',
'PYMODULE'),
('asyncio.format_helpers',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\format_helpers.py',
'PYMODULE'),
('asyncio.futures',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\futures.py',
'PYMODULE'),
('asyncio.locks',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\locks.py',
'PYMODULE'),
('asyncio.log',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\log.py',
'PYMODULE'),
('asyncio.proactor_events',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\proactor_events.py',
'PYMODULE'),
('asyncio.protocols',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\protocols.py',
'PYMODULE'),
('asyncio.queues',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\queues.py',
'PYMODULE'),
('asyncio.runners',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\runners.py',
'PYMODULE'),
('asyncio.selector_events',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\selector_events.py',
'PYMODULE'),
('asyncio.sslproto',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\sslproto.py',
'PYMODULE'),
('asyncio.staggered',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\staggered.py',
'PYMODULE'),
('asyncio.streams',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\streams.py',
'PYMODULE'),
('asyncio.subprocess',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\subprocess.py',
'PYMODULE'),
('asyncio.tasks',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\tasks.py',
'PYMODULE'),
('asyncio.threads',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\threads.py',
'PYMODULE'),
('asyncio.transports',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\transports.py',
'PYMODULE'),
('asyncio.trsock',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\trsock.py',
'PYMODULE'),
('asyncio.unix_events',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\unix_events.py',
'PYMODULE'),
('asyncio.windows_events',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\windows_events.py',
'PYMODULE'),
('asyncio.windows_utils',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\asyncio\\windows_utils.py',
'PYMODULE'),
('base64',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\base64.py',
'PYMODULE'),
('bdb',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\bdb.py',
'PYMODULE'),
('bisect',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\bisect.py',
'PYMODULE'),
('bz2',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\bz2.py',
'PYMODULE'),
('calendar',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\calendar.py',
'PYMODULE'),
('cmd',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\cmd.py',
'PYMODULE'),
('code',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\code.py',
'PYMODULE'),
('codeop',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\codeop.py',
'PYMODULE'),
('commctrl',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32\\lib\\commctrl.py',
'PYMODULE'),
('concurrent',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\concurrent\\__init__.py',
'PYMODULE'),
('concurrent.futures',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\concurrent\\futures\\__init__.py',
'PYMODULE'),
('concurrent.futures._base',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\concurrent\\futures\\_base.py',
'PYMODULE'),
('concurrent.futures.process',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\concurrent\\futures\\process.py',
'PYMODULE'),
('concurrent.futures.thread',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\concurrent\\futures\\thread.py',
'PYMODULE'),
('configparser',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\configparser.py',
'PYMODULE'),
('contextlib',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\contextlib.py',
'PYMODULE'),
('contextvars',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\contextvars.py',
'PYMODULE'),
('copy',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\copy.py',
'PYMODULE'),
('csv',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\csv.py',
'PYMODULE'),
('ctypes',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\ctypes\\__init__.py',
'PYMODULE'),
('ctypes._endian',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\ctypes\\_endian.py',
'PYMODULE'),
('dataclasses',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\dataclasses.py',
'PYMODULE'),
('datetime',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\datetime.py',
'PYMODULE'),
('decimal',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\decimal.py',
'PYMODULE'),
('dis',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\dis.py',
'PYMODULE'),
('distutils',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\distutils\\__init__.py',
'PYMODULE'),
('distutils.debug',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\distutils\\debug.py',
'PYMODULE'),
('distutils.dep_util',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\distutils\\dep_util.py',
'PYMODULE'),
('distutils.dir_util',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\distutils\\dir_util.py',
'PYMODULE'),
('distutils.errors',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\distutils\\errors.py',
'PYMODULE'),
('distutils.file_util',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\distutils\\file_util.py',
'PYMODULE'),
('distutils.filelist',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\distutils\\filelist.py',
'PYMODULE'),
('distutils.log',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\distutils\\log.py',
'PYMODULE'),
('distutils.spawn',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\distutils\\spawn.py',
'PYMODULE'),
('distutils.sysconfig',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\distutils\\sysconfig.py',
'PYMODULE'),
('distutils.text_file',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\distutils\\text_file.py',
'PYMODULE'),
('distutils.util',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\distutils\\util.py',
'PYMODULE'),
('email',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\__init__.py',
'PYMODULE'),
('email._encoded_words',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\_encoded_words.py',
'PYMODULE'),
('email._header_value_parser',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\_header_value_parser.py',
'PYMODULE'),
('email._parseaddr',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\_parseaddr.py',
'PYMODULE'),
('email._policybase',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\_policybase.py',
'PYMODULE'),
('email.base64mime',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\base64mime.py',
'PYMODULE'),
('email.charset',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\charset.py',
'PYMODULE'),
('email.contentmanager',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\contentmanager.py',
'PYMODULE'),
('email.encoders',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\encoders.py',
'PYMODULE'),
('email.errors',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\errors.py',
'PYMODULE'),
('email.feedparser',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\feedparser.py',
'PYMODULE'),
('email.generator',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\generator.py',
'PYMODULE'),
('email.header',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\header.py',
'PYMODULE'),
('email.headerregistry',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\headerregistry.py',
'PYMODULE'),
('email.iterators',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\iterators.py',
'PYMODULE'),
('email.message',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\message.py',
'PYMODULE'),
('email.parser',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\parser.py',
'PYMODULE'),
('email.policy',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\policy.py',
'PYMODULE'),
('email.quoprimime',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\quoprimime.py',
'PYMODULE'),
('email.utils',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\email\\utils.py',
'PYMODULE'),
('fnmatch',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\fnmatch.py',
'PYMODULE'),
('fractions',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\fractions.py',
'PYMODULE'),
('ftplib',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\ftplib.py',
'PYMODULE'),
('getopt',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\getopt.py',
'PYMODULE'),
('getpass',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\getpass.py',
'PYMODULE'),
('gettext',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\gettext.py',
'PYMODULE'),
('glob',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\glob.py',
'PYMODULE'),
('gzip',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\gzip.py',
'PYMODULE'),
('hashlib',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\hashlib.py',
'PYMODULE'),
('hmac',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\hmac.py',
'PYMODULE'),
('html',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\html\\__init__.py',
'PYMODULE'),
('html.entities',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\html\\entities.py',
'PYMODULE'),
('http',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\http\\__init__.py',
'PYMODULE'),
('http.client',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\http\\client.py',
'PYMODULE'),
('http.cookiejar',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\http\\cookiejar.py',
'PYMODULE'),
('http.server',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\http\\server.py',
'PYMODULE'),
('imp',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\imp.py',
'PYMODULE'),
('importlib',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\importlib\\__init__.py',
'PYMODULE'),
('importlib._bootstrap',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\importlib\\_bootstrap.py',
'PYMODULE'),
('importlib._bootstrap_external',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\importlib\\_bootstrap_external.py',
'PYMODULE'),
('importlib.abc',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\importlib\\abc.py',
'PYMODULE'),
('importlib.machinery',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\importlib\\machinery.py',
'PYMODULE'),
('importlib.metadata',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\importlib\\metadata.py',
'PYMODULE'),
('importlib.util',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\importlib\\util.py',
'PYMODULE'),
('inspect',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\inspect.py',
'PYMODULE'),
('logging',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\logging\\__init__.py',
'PYMODULE'),
('lzma',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\lzma.py',
'PYMODULE'),
('mimetypes',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\mimetypes.py',
'PYMODULE'),
('multiprocessing',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\__init__.py',
'PYMODULE'),
('multiprocessing.connection',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\connection.py',
'PYMODULE'),
('multiprocessing.context',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\context.py',
'PYMODULE'),
('multiprocessing.dummy',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\dummy\\__init__.py',
'PYMODULE'),
('multiprocessing.dummy.connection',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\dummy\\connection.py',
'PYMODULE'),
('multiprocessing.forkserver',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\forkserver.py',
'PYMODULE'),
('multiprocessing.heap',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\heap.py',
'PYMODULE'),
('multiprocessing.managers',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\managers.py',
'PYMODULE'),
('multiprocessing.pool',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\pool.py',
'PYMODULE'),
('multiprocessing.popen_fork',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\popen_fork.py',
'PYMODULE'),
('multiprocessing.popen_forkserver',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\popen_forkserver.py',
'PYMODULE'),
('multiprocessing.popen_spawn_posix',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\popen_spawn_posix.py',
'PYMODULE'),
('multiprocessing.popen_spawn_win32',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\popen_spawn_win32.py',
'PYMODULE'),
('multiprocessing.process',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\process.py',
'PYMODULE'),
('multiprocessing.queues',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\queues.py',
'PYMODULE'),
('multiprocessing.reduction',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\reduction.py',
'PYMODULE'),
('multiprocessing.resource_sharer',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\resource_sharer.py',
'PYMODULE'),
('multiprocessing.resource_tracker',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\resource_tracker.py',
'PYMODULE'),
('multiprocessing.shared_memory',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\shared_memory.py',
'PYMODULE'),
('multiprocessing.sharedctypes',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\sharedctypes.py',
'PYMODULE'),
('multiprocessing.spawn',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\spawn.py',
'PYMODULE'),
('multiprocessing.synchronize',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\synchronize.py',
'PYMODULE'),
('multiprocessing.util',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\util.py',
'PYMODULE'),
('netrc',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\netrc.py',
'PYMODULE'),
('nturl2path',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\nturl2path.py',
'PYMODULE'),
('numbers',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\numbers.py',
'PYMODULE'),
('opcode',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\opcode.py',
'PYMODULE'),
('optparse',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\optparse.py',
'PYMODULE'),
('packaging',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\packaging\\__init__.py',
'PYMODULE'),
('packaging._elffile',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\packaging\\_elffile.py',
'PYMODULE'),
('packaging._manylinux',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\packaging\\_manylinux.py',
'PYMODULE'),
('packaging._musllinux',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\packaging\\_musllinux.py',
'PYMODULE'),
('packaging._parser',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\packaging\\_parser.py',
'PYMODULE'),
('packaging._structures',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\packaging\\_structures.py',
'PYMODULE'),
('packaging._tokenizer',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\packaging\\_tokenizer.py',
'PYMODULE'),
('packaging.licenses',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\packaging\\licenses\\__init__.py',
'PYMODULE'),
('packaging.licenses._spdx',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\packaging\\licenses\\_spdx.py',
'PYMODULE'),
('packaging.markers',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\packaging\\markers.py',
'PYMODULE'),
('packaging.metadata',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\packaging\\metadata.py',
'PYMODULE'),
('packaging.requirements',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\packaging\\requirements.py',
'PYMODULE'),
('packaging.specifiers',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\packaging\\specifiers.py',
'PYMODULE'),
('packaging.tags',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\packaging\\tags.py',
'PYMODULE'),
('packaging.utils',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\packaging\\utils.py',
'PYMODULE'),
('packaging.version',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\packaging\\version.py',
'PYMODULE'),
('pathlib',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\pathlib.py',
'PYMODULE'),
('pdb',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\pdb.py',
'PYMODULE'),
('pickle',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\pickle.py',
'PYMODULE'),
('pkg_resources',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pkg_resources\\__init__.py',
'PYMODULE'),
('pkg_resources._vendor',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pkg_resources\\_vendor\\__init__.py',
'PYMODULE'),
('pkg_resources._vendor.appdirs',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pkg_resources\\_vendor\\appdirs.py',
'PYMODULE'),
('pkg_resources._vendor.packaging',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\__init__.py',
'PYMODULE'),
('pkg_resources._vendor.packaging.__about__',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\__about__.py',
'PYMODULE'),
('pkg_resources._vendor.packaging._compat',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\_compat.py',
'PYMODULE'),
('pkg_resources._vendor.packaging._structures',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\_structures.py',
'PYMODULE'),
('pkg_resources._vendor.packaging._typing',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\_typing.py',
'PYMODULE'),
('pkg_resources._vendor.packaging.markers',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\markers.py',
'PYMODULE'),
('pkg_resources._vendor.packaging.requirements',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\requirements.py',
'PYMODULE'),
('pkg_resources._vendor.packaging.specifiers',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\specifiers.py',
'PYMODULE'),
('pkg_resources._vendor.packaging.tags',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\tags.py',
'PYMODULE'),
('pkg_resources._vendor.packaging.utils',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\utils.py',
'PYMODULE'),
('pkg_resources._vendor.packaging.version',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\version.py',
'PYMODULE'),
('pkg_resources._vendor.pyparsing',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pkg_resources\\_vendor\\pyparsing.py',
'PYMODULE'),
('pkg_resources.extern',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pkg_resources\\extern\\__init__.py',
'PYMODULE'),
('pkgutil',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\pkgutil.py',
'PYMODULE'),
('platform',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\platform.py',
'PYMODULE'),
('plistlib',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\plistlib.py',
'PYMODULE'),
('pprint',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\pprint.py',
'PYMODULE'),
('py_compile',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\py_compile.py',
'PYMODULE'),
('pydoc',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\pydoc.py',
'PYMODULE'),
('pydoc_data',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\pydoc_data\\__init__.py',
'PYMODULE'),
('pydoc_data.topics',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\pydoc_data\\topics.py',
'PYMODULE'),
('pygame',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\__init__.py',
'PYMODULE'),
('pygame.colordict',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\colordict.py',
'PYMODULE'),
('pygame.cursors',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\cursors.py',
'PYMODULE'),
('pygame.fastevent',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\fastevent.py',
'PYMODULE'),
('pygame.ftfont',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\ftfont.py',
'PYMODULE'),
('pygame.macosx',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\macosx.py',
'PYMODULE'),
('pygame.pkgdata',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\pkgdata.py',
'PYMODULE'),
('pygame.sndarray',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\sndarray.py',
'PYMODULE'),
('pygame.sprite',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\sprite.py',
'PYMODULE'),
('pygame.surfarray',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\surfarray.py',
'PYMODULE'),
('pygame.sysfont',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\sysfont.py',
'PYMODULE'),
('pygame.threads',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\threads\\__init__.py',
'PYMODULE'),
('pygame.version',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\version.py',
'PYMODULE'),
('pythoncom',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pythoncom.py',
'PYMODULE'),
('pywin',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\Pythonwin\\pywin\\__init__.py',
'PYMODULE'),
('pywin.dialogs',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\Pythonwin\\pywin\\dialogs\\__init__.py',
'PYMODULE'),
('pywin.dialogs.list',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\Pythonwin\\pywin\\dialogs\\list.py',
'PYMODULE'),
('pywin.dialogs.status',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\Pythonwin\\pywin\\dialogs\\status.py',
'PYMODULE'),
('pywin.mfc',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\Pythonwin\\pywin\\mfc\\__init__.py',
'PYMODULE'),
('pywin.mfc.dialog',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\Pythonwin\\pywin\\mfc\\dialog.py',
'PYMODULE'),
('pywin.mfc.object',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\Pythonwin\\pywin\\mfc\\object.py',
'PYMODULE'),
('pywin.mfc.thread',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\Pythonwin\\pywin\\mfc\\thread.py',
'PYMODULE'),
('pywin.mfc.window',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\Pythonwin\\pywin\\mfc\\window.py',
'PYMODULE'),
('pywin32_system32', '-', 'PYMODULE'),
('pywintypes',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32\\lib\\pywintypes.py',
'PYMODULE'),
('queue',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\queue.py',
'PYMODULE'),
('quopri',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\quopri.py',
'PYMODULE'),
('random',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\random.py',
'PYMODULE'),
('readchar',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\readchar\\__init__.py',
'PYMODULE'),
('readchar._base_key',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\readchar\\_base_key.py',
'PYMODULE'),
('readchar._config',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\readchar\\_config.py',
'PYMODULE'),
('readchar._posix_key',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\readchar\\_posix_key.py',
'PYMODULE'),
('readchar._posix_read',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\readchar\\_posix_read.py',
'PYMODULE'),
('readchar._win_key',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\readchar\\_win_key.py',
'PYMODULE'),
('readchar._win_read',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\readchar\\_win_read.py',
'PYMODULE'),
('readchar.key',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\readchar\\key.py',
'PYMODULE'),
('runpy',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\runpy.py',
'PYMODULE'),
('secrets',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\secrets.py',
'PYMODULE'),
('selectors',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\selectors.py',
'PYMODULE'),
('shlex',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\shlex.py',
'PYMODULE'),
('shutil',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\shutil.py',
'PYMODULE'),
('signal',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\signal.py',
'PYMODULE'),
('socket',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\socket.py',
'PYMODULE'),
('socketserver',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\socketserver.py',
'PYMODULE'),
('ssl',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\ssl.py',
'PYMODULE'),
('statistics',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\statistics.py',
'PYMODULE'),
('string',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\string.py',
'PYMODULE'),
('stringprep',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\stringprep.py',
'PYMODULE'),
('subprocess',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\subprocess.py',
'PYMODULE'),
('sysconfig',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\sysconfig.py',
'PYMODULE'),
('tarfile',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\tarfile.py',
'PYMODULE'),
('tempfile',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\tempfile.py',
'PYMODULE'),
('textwrap',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\textwrap.py',
'PYMODULE'),
('threading',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\threading.py',
'PYMODULE'),
('tkinter',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\tkinter\\__init__.py',
'PYMODULE'),
('tkinter.constants',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\tkinter\\constants.py',
'PYMODULE'),
('token',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\token.py',
'PYMODULE'),
('tokenize',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\tokenize.py',
'PYMODULE'),
('tracemalloc',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\tracemalloc.py',
'PYMODULE'),
('tty',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\tty.py',
'PYMODULE'),
('typing',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\typing.py',
'PYMODULE'),
('urllib',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\urllib\\__init__.py',
'PYMODULE'),
('urllib.error',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\urllib\\error.py',
'PYMODULE'),
('urllib.parse',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\urllib\\parse.py',
'PYMODULE'),
('urllib.request',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\urllib\\request.py',
'PYMODULE'),
('urllib.response',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\urllib\\response.py',
'PYMODULE'),
('uu',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\uu.py',
'PYMODULE'),
('uuid',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\uuid.py',
'PYMODULE'),
('webbrowser',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\webbrowser.py',
'PYMODULE'),
('win32com',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32com\\__init__.py',
'PYMODULE'),
('win32com.client',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32com\\client\\__init__.py',
'PYMODULE'),
('win32com.client.CLSIDToClass',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32com\\client\\CLSIDToClass.py',
'PYMODULE'),
('win32com.client.build',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32com\\client\\build.py',
'PYMODULE'),
('win32com.client.dynamic',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32com\\client\\dynamic.py',
'PYMODULE'),
('win32com.client.gencache',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32com\\client\\gencache.py',
'PYMODULE'),
('win32com.client.genpy',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32com\\client\\genpy.py',
'PYMODULE'),
('win32com.client.makepy',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32com\\client\\makepy.py',
'PYMODULE'),
('win32com.client.selecttlb',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32com\\client\\selecttlb.py',
'PYMODULE'),
('win32com.client.util',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32com\\client\\util.py',
'PYMODULE'),
('win32com.server',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32com\\server\\__init__.py',
'PYMODULE'),
('win32com.server.dispatcher',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32com\\server\\dispatcher.py',
'PYMODULE'),
('win32com.server.exception',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32com\\server\\exception.py',
'PYMODULE'),
('win32com.server.policy',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32com\\server\\policy.py',
'PYMODULE'),
('win32com.server.util',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32com\\server\\util.py',
'PYMODULE'),
('win32com.shell',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32comext\\shell\\__init__.py',
'PYMODULE'),
('win32com.shell.shellcon',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32comext\\shell\\shellcon.py',
'PYMODULE'),
('win32com.universal',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32com\\universal.py',
'PYMODULE'),
('win32com.util',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32com\\util.py',
'PYMODULE'),
('win32con',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32\\lib\\win32con.py',
'PYMODULE'),
('win32traceutil',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32\\lib\\win32traceutil.py',
'PYMODULE'),
('winerror',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\win32\\lib\\winerror.py',
'PYMODULE'),
('winpty',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\winpty\\__init__.py',
'PYMODULE'),
('winpty.enums',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\winpty\\enums.py',
'PYMODULE'),
('winpty.ptyprocess',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\winpty\\ptyprocess.py',
'PYMODULE'),
('winpty.tests',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\winpty\\tests\\__init__.py',
'PYMODULE'),
('winpty.tests.test_pty',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\winpty\\tests\\test_pty.py',
'PYMODULE'),
('winpty.tests.test_ptyprocess',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\winpty\\tests\\test_ptyprocess.py',
'PYMODULE'),
('xml',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\xml\\__init__.py',
'PYMODULE'),
('xml.parsers',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\xml\\parsers\\__init__.py',
'PYMODULE'),
('xml.parsers.expat',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\xml\\parsers\\expat.py',
'PYMODULE'),
('xml.sax',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\xml\\sax\\__init__.py',
'PYMODULE'),
('xml.sax._exceptions',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\xml\\sax\\_exceptions.py',
'PYMODULE'),
('xml.sax.expatreader',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\xml\\sax\\expatreader.py',
'PYMODULE'),
('xml.sax.handler',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\xml\\sax\\handler.py',
'PYMODULE'),
('xml.sax.saxutils',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\xml\\sax\\saxutils.py',
'PYMODULE'),
('xml.sax.xmlreader',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\xml\\sax\\xmlreader.py',
'PYMODULE'),
('xmlrpc',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\xmlrpc\\__init__.py',
'PYMODULE'),
('xmlrpc.client',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\xmlrpc\\client.py',
'PYMODULE'),
('zipfile',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\zipfile.py',
'PYMODULE'),
('zipimport',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\zipimport.py',
'PYMODULE')])

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,61 @@
This file lists modules PyInstaller was not able to find. This does not
necessarily mean this module is required for running your program. Python and
Python 3rd-party packages include a lot of conditional or optional modules. For
example the module 'ntpath' only exists on Windows, whereas the module
'posixpath' only exists on Posix systems.
Types if import:
* top-level: imported at the top-level - look at these first
* conditional: imported within an if-statement
* delayed: imported within a function
* optional: imported within a try-except-statement
IMPORTANT: Do NOT post this list to the issue-tracker. Use it as a basis for
tracking down the missing module yourself. Thanks!
missing module named pyimod02_importers - imported by C:\Users\Ed\AppData\Local\Programs\Python\Python39\Lib\site-packages\PyInstaller\hooks\rthooks\pyi_rth_pkgutil.py (delayed), C:\Users\Ed\AppData\Local\Programs\Python\Python39\Lib\site-packages\PyInstaller\hooks\rthooks\pyi_rth_pkgres.py (delayed)
missing module named _posixsubprocess - imported by subprocess (optional), multiprocessing.util (delayed)
missing module named grp - imported by shutil (optional), tarfile (optional), pathlib (delayed, optional), subprocess (optional)
missing module named pwd - imported by posixpath (delayed, conditional), shutil (optional), tarfile (optional), pathlib (delayed, conditional, optional), subprocess (optional), distutils.util (delayed, conditional, optional), http.server (delayed, optional), webbrowser (delayed), netrc (delayed, conditional), getpass (delayed)
missing module named org - imported by pickle (optional)
missing module named 'org.python' - imported by copy (optional), xml.sax (delayed, conditional)
missing module named posix - imported by shutil (conditional), importlib._bootstrap_external (conditional), os (conditional, optional)
missing module named resource - imported by posix (top-level)
missing module named _manylinux - imported by pkg_resources._vendor.packaging.tags (delayed, optional), packaging._manylinux (delayed, optional)
missing module named termios - imported by readchar._posix_read (top-level), tty (top-level), getpass (optional)
missing module named _frozen_importlib_external - imported by importlib._bootstrap (delayed), importlib (optional), importlib.abc (optional), zipimport (top-level)
excluded module named _frozen_importlib - imported by importlib (optional), importlib.abc (optional), zipimport (top-level)
missing module named pep517 - imported by importlib.metadata (delayed)
missing module named readline - imported by cmd (delayed, conditional, optional), code (delayed, conditional, optional), pdb (delayed, optional)
missing module named __builtin__ - imported by pkg_resources._vendor.pyparsing (conditional)
missing module named ordereddict - imported by pkg_resources._vendor.pyparsing (optional)
missing module named collections.MutableMapping - imported by collections (optional), pkg_resources._vendor.pyparsing (optional)
missing module named collections.Iterable - imported by collections (optional), pkg_resources._vendor.pyparsing (optional)
missing module named 'pkg_resources.extern.pyparsing' - imported by pkg_resources._vendor.packaging.markers (top-level), pkg_resources._vendor.packaging.requirements (top-level)
missing module named 'com.sun' - imported by pkg_resources._vendor.appdirs (delayed, conditional, optional)
missing module named com - imported by pkg_resources._vendor.appdirs (delayed)
missing module named 'win32com.gen_py' - imported by win32com (conditional, optional)
missing module named _winreg - imported by platform (delayed, optional), pkg_resources._vendor.appdirs (delayed, conditional)
missing module named pkg_resources.extern.packaging - imported by pkg_resources.extern (top-level), pkg_resources (top-level)
missing module named pkg_resources.extern.appdirs - imported by pkg_resources.extern (top-level), pkg_resources (top-level)
missing module named _scproxy - imported by urllib.request (conditional)
missing module named 'java.lang' - imported by platform (delayed, optional), xml.sax._exceptions (conditional)
missing module named vms_lib - imported by platform (delayed, optional)
missing module named java - imported by platform (delayed)
missing module named _posixshmem - imported by multiprocessing.resource_tracker (conditional), multiprocessing.shared_memory (conditional)
missing module named multiprocessing.BufferTooShort - imported by multiprocessing (top-level), multiprocessing.connection (top-level)
missing module named multiprocessing.AuthenticationError - imported by multiprocessing (top-level), multiprocessing.connection (top-level)
missing module named multiprocessing.get_context - imported by multiprocessing (top-level), multiprocessing.pool (top-level), multiprocessing.managers (top-level), multiprocessing.sharedctypes (top-level)
missing module named multiprocessing.TimeoutError - imported by multiprocessing (top-level), multiprocessing.pool (top-level)
missing module named multiprocessing.set_start_method - imported by multiprocessing (top-level), multiprocessing.spawn (top-level)
missing module named multiprocessing.get_start_method - imported by multiprocessing (top-level), multiprocessing.spawn (top-level)
missing module named flaky - imported by winpty.tests.test_ptyprocess (top-level)
missing module named pytest - imported by winpty.tests.test_pty (top-level), winpty.tests.test_ptyprocess (top-level)
missing module named asyncio.DefaultEventLoopPolicy - imported by asyncio (delayed, conditional), asyncio.events (delayed, conditional)
missing module named OpenGL - imported by pygame (delayed)
missing module named numpy - imported by pygame.pixelcopy (top-level), pygame.mixer (top-level), pygame.surfarray (top-level), pygame.sndarray (top-level), pygame (delayed)
missing module named pygame._common - imported by pygame.rect (top-level), pygame.rwobject (top-level), pygame.color (top-level), pygame.surface (top-level), pygame.display (top-level), pygame.draw (top-level), pygame.image (top-level), pygame.key (top-level), pygame.mask (top-level), pygame.transform (top-level), pygame.pixelcopy (top-level), pygame.pixelarray (top-level), pygame.font (top-level), pygame.mixer_music (top-level), pygame.mixer (top-level)
missing module named 'pygame.overlay' - imported by pygame (optional)
missing module named typing_extensions - imported by pygame.math (top-level), pygame.mouse (top-level)
missing module named 'pygame.cdrom' - imported by pygame (conditional, optional)

File diff suppressed because it is too large Load diff

BIN
dist/RA3MP3Playback.exe vendored Normal file

Binary file not shown.