cleaning up, this was getting messeh