revert to most logical state on failure instead of a seperate failure state