redone to hopefully get rid of all the derps