omg I added so much. I can't really explain it all.