refactoring bullllllllllllllshit
cleanup