I made this a while ago in August 2022. Cleaned up the code a little bit before posting, but I'm not even sure if it works.