updated failure detection