adding fancy error codes