done with error checking in place