gitextract_9j8i29wl/ ├── .clang-format ├── .gitattributes ├── .github/ │ ├── actions/ │ │ └── setup_env/ │ │ └── action.yml │ └── workflows/ │ ├── ci.yml │ ├── notify.yml │ └── release.yml ├── .gitignore ├── .pre-commit-config.yaml ├── LICENSE.txt ├── README.md ├── assets/ │ └── lang/ │ └── enUS/ │ ├── How to add to these files.md │ ├── affixes.json │ ├── aspects.json │ ├── corrections.json │ ├── item_types.json │ ├── paragon_maxroll_ids.json │ ├── sigils.json │ ├── tooltips.json │ ├── tributes.json │ └── uniques.json ├── build.py ├── pyproject.toml ├── pytest.ini ├── src/ │ ├── __init__.py │ ├── autoupdater.py │ ├── cam.py │ ├── config/ │ │ ├── __init__.py │ │ ├── data.py │ │ ├── helper.py │ │ ├── loader.py │ │ ├── profile_models.py │ │ ├── settings_models.py │ │ └── ui.py │ ├── dataloader.py │ ├── gui/ │ │ ├── __init__.py │ │ ├── activity_log_widget.py │ │ ├── collapsible_widget.py │ │ ├── config_tab.py │ │ ├── config_window.py │ │ ├── d4lfitem.py │ │ ├── dialog.py │ │ ├── importer/ │ │ │ ├── __init__.py │ │ │ ├── d4builds.py │ │ │ ├── diablo_trade.py │ │ │ ├── gui_common.py │ │ │ ├── importer_config.py │ │ │ ├── maxroll.py │ │ │ ├── mobalytics.py │ │ │ └── paragon_export.py │ │ ├── importer_window.py │ │ ├── open_user_config_button.py │ │ ├── profile_editor/ │ │ │ ├── __init__.py │ │ │ ├── affixes_tab.py │ │ │ ├── aspect_upgrades_tab.py │ │ │ ├── global_uniques_tab.py │ │ │ ├── profile_editor.py │ │ │ ├── sigils_tab.py │ │ │ └── tributes_tab.py │ │ ├── profile_editor_window.py │ │ ├── profile_tab.py │ │ ├── themes.py │ │ └── unified_window.py │ ├── item/ │ │ ├── __init__.py │ │ ├── data/ │ │ │ ├── __init__.py │ │ │ ├── affix.py │ │ │ ├── aspect.py │ │ │ ├── item_type.py │ │ │ ├── rarity.py │ │ │ └── seasonal_attribute.py │ │ ├── descr/ │ │ │ ├── __init__.py │ │ │ ├── read_descr_tts.py │ │ │ ├── text.py │ │ │ └── texture.py │ │ ├── filter.py │ │ ├── find_descr.py │ │ └── models.py │ ├── logger.py │ ├── loot_mover.py │ ├── main.py │ ├── overlay.py │ ├── paragon_overlay.py │ ├── scripts/ │ │ ├── __init__.py │ │ ├── common.py │ │ ├── handler.py │ │ ├── loot_filter_tts.py │ │ ├── vision_mode_fast.py │ │ └── vision_mode_with_highlighting.py │ ├── startup_messages.py │ ├── template_finder.py │ ├── tools/ │ │ ├── __init__.py │ │ ├── data/ │ │ │ ├── custom_affixes_enUS.json │ │ │ └── custom_sigils_enUS.json │ │ └── gen_data.py │ ├── tts.py │ ├── ui/ │ │ ├── __init__.py │ │ ├── char_inventory.py │ │ ├── inventory_base.py │ │ ├── menu.py │ │ ├── stash.py │ │ └── vendor.py │ └── utils/ │ ├── __init__.py │ ├── custom_mouse.py │ ├── image_operations.py │ ├── misc.py │ ├── process_handler.py │ ├── roi_operations.py │ └── window.py ├── tests/ │ ├── __init__.py │ ├── config/ │ │ ├── __init__.py │ │ ├── data/ │ │ │ ├── __init__.py │ │ │ ├── sigils.py │ │ │ └── uniques.py │ │ ├── helper_test.py │ │ ├── loader_test.py │ │ ├── models_test.py │ │ └── ui_test.py │ ├── conftest.py │ ├── gui/ │ │ ├── __init__.py │ │ └── importer/ │ │ ├── __init__.py │ │ ├── test_d4builds.py │ │ ├── test_diablo_trade.py │ │ ├── test_gui_common.py │ │ ├── test_maxroll.py │ │ └── test_mobalytics.py │ ├── item/ │ │ ├── __init__.py │ │ ├── descr/ │ │ │ └── __init__.py │ │ ├── filter/ │ │ │ ├── __init__.py │ │ │ ├── data/ │ │ │ │ ├── __init__.py │ │ │ │ ├── affixes.py │ │ │ │ ├── aspects.py │ │ │ │ ├── filters.py │ │ │ │ ├── items.py │ │ │ │ ├── sigils.py │ │ │ │ ├── tributes.py │ │ │ │ └── uniques.py │ │ │ └── filter_test.py │ │ ├── read_descr_season6_tts_test.py │ │ ├── read_descr_season8_tts_test.py │ │ ├── read_descr_season_11_tts_test.py │ │ ├── read_descr_season_12_tts_test.py │ │ ├── read_descr_season_13_tts_test.py │ │ └── read_descr_tts_test.py │ ├── template_finder_test.py │ ├── ui/ │ │ ├── __init__.py │ │ ├── char_inventory_test.py │ │ └── chest_test.py │ └── utils/ │ ├── __init__.py │ ├── image_operations_test.py │ └── roi_operations_test.py └── tts/ ├── install_dll.cmd ├── saapi.cpp ├── saapi.h └── saapi.vcxproj