debugged the crap out of it