extra error checking 3