initial commit omg there was too many things to add sorryyyyyy