fucked it up a bit, but now it should be alright