Blahhh. redoing this, yet again