Finer grained error handling.