Deserves a thread of its own tbh