error checking complete