# ---------- Common ----------
cloudpickle==2.2.1
joblib==1.3.2
packaging>=23.2
psutil>=5.9,<6.1
python-dateutil==2.8.2
pytz>=2023.3
slicer==0.0.7
threadpoolctl==3.1.0
tqdm==4.66.1
six==1.16.0
shap==0.42.1
matplotlib>=3.7,<3.9

# Backports only where needed
importlib-metadata==6.7.0; python_version < "3.10"
typing_extensions>=4.13.2; python_version < "3.11"
zipp==3.15.0; python_version < "3.10"

# ---------- Py < 3.11 ----------
numpy==1.21.6; python_version < "3.11"
pandas==1.3.5; python_version < "3.11"
scipy==1.7.3; python_version < "3.11"
scikit-learn==1.0.2; python_version < "3.11"
numba==0.56.4; python_version < "3.11"
llvmlite==0.39.1; python_version < "3.11"
fasttreeshap==0.1.6; python_version < "3.11"

# ---------- Py 3.11–3.12 ----------
numpy>=1.26,<2.1; python_version >= "3.11" and python_version < "3.13"
pandas>=1.5,<2.2; python_version >= "3.11" and python_version < "3.13"
scipy>=1.10,<1.14; python_version >= "3.11" and python_version < "3.13"
scikit-learn>=1.3,<1.6; python_version >= "3.11" and python_version < "3.13"
numba==0.59.1; python_version >= "3.11" and python_version < "3.13"
llvmlite==0.42.0; python_version >= "3.11" and python_version < "3.13"
fasttreeshap==0.1.6; python_version >= "3.11" and python_version < "3.13"
