give better error messages