Redo... pretty much everything