detect errors