more and better error reporting