This needs to be it's own thread. Damn.