XGBoost-driven adaptive spreading factor allocation for energy-efficient LoRaWAN networks | Synapse