clean up and seperate stuff