sorry for all the commits lol