redoing some stuff
going to redo some stuff