In dire need of some cleaning, but it works